зеркало из https://github.com/mozilla/pjs.git
332f58b128
Also, accept patches from Igor: Subject: Rhino: UintMap optimization Date: Fri, 06 Jul 2001 13:14:49 +0200 From: Igor Bukanov <igor@icesoft.no> Organization: Wind River To: Norris Boyd <nboyd@atg.com> Hi, Norris! Currently omj.Node uses Hashtable to map int property types to objects/integer. In my opinion this is very inefficient: to store single int property it creates 5 objects: one for property Hahstable, 2 Integer wrappers for property/value, array to sore Hahstable slots and Hashtable slot itself. To fix this I added omj.UintMap class that can map non-negative integers to objects or integers and modified omj.Node to use it. The class is a hashtable implementation that uses one int[] and one Object[] arrays to store keys/values and Object[] array is not created if the map contains only integers. To take full advantage of omj.UintMap code has to be modified to use Node.getIntProp/Node.putIntProp to store int properties, but even in this form it is a win. I can provide patches to use Node.getIntProp/Node.putIntProp and UintMap for InterpreterData.itsLineNumberTable if this is OK. Regards, Igor |
||
---|---|---|
.. | ||
docs | ||
examples | ||
macbuild | ||
src | ||
toolsrc | ||
Makefile | ||
README.html | ||
apiClasses.properties | ||
build-date | ||
build.xml |
README.html
<html> <!-- - The contents of this file are subject to the Netscape Public - License Version 1.1 (the "License"); you may not use this file - except in compliance with the License. You may obtain a copy of - the License at http://www.mozilla.org/NPL/ - - Software distributed under the License is distributed on an "AS - IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or - implied. See the License for the specific language governing - rights and limitations under the License. - - The Original Code is Rhino code, released - May 6, 1999. - - The Initial Developer of the Original Code is Netscape - Communications Corporation. Portions created by Netscape are - Copyright (C) 1998-1999 Netscape Communications Corporation. All - Rights Reserved. - - Contributor(s): - Norris Boyd - - Alternatively, the contents of this file may be used under the - terms of the GNU Public License (the "GPL"), in which case the - provisions of the GPL are applicable instead of those above. - If you wish to allow use of your version of this file only - under the terms of the GPL and not to allow others to use your - version of this file under the NPL, indicate your decision by - deleting the provisions above and replace them with the notice - and other provisions required by the GPL. If you do not delete - the provisions above, a recipient may use your version of this - file under either the NPL or the GPL. --> <body> <h1> <span CLASS=LXRSHORTDESC> Rhino: JavaScript in Java<p> </span> </h1> <span CLASS=LXRLONGDESC> Rhino is an implementation of JavaScript in Java. Documentation can be found <a href="http://www.mozilla.org/js/rhino/rhino.html">here</a>. </span> </body> </html>