org.mozilla.javascript.optimizer

## Class OptRuntime

- java.lang.Object
- - org.mozilla.javascript.ScriptRuntime
  - - org.mozilla.javascript.optimizer.OptRuntime

    public final class OptRuntime
    extends ScriptRuntime

### Nested Class Summary

Nested Classes
`static class` `OptRuntime.GeneratorState`

### Nested classes/interfaces inherited from class org.mozilla.javascript.ScriptRuntime

`ScriptRuntime.MessageProvider`

### Field Summary

Fields
`static java.lang.Double` `minusOneObj`
`static java.lang.Double` `oneObj`
`static java.lang.Double` `zeroObj`

### Fields inherited from class org.mozilla.javascript.ScriptRuntime

`BooleanClass, ByteClass, CharacterClass, ClassClass, ContextClass, ContextFactoryClass, DateClass, DoubleClass, emptyArgs, emptyStrings, ENUMERATE_ARRAY, ENUMERATE_ARRAY_NO_ITERATOR, ENUMERATE_KEYS, ENUMERATE_KEYS_NO_ITERATOR, ENUMERATE_VALUES, ENUMERATE_VALUES_NO_ITERATOR, FloatClass, FunctionClass, IntegerClass, LongClass, messageProvider, NaN, NaNobj, negativeZero, NumberClass, ObjectClass, ROOT_LOCALE, ScriptableClass, ScriptableObjectClass, ShortClass, StringClass`

### Constructor Summary

Constructors
Constructor and Description
`OptRuntime()`

### Method Summary

Methods
`static java.lang.Object` `add(double val1, java.lang.Object val2)`
`static java.lang.Object` `add(java.lang.Object val1, double val2)`
`static java.lang.Object` `call0(Callable fun, Scriptable thisObj, Context cx, Scriptable scope)` Implement ....() call shrinking optimizer code.
`static java.lang.Object` `call1(Callable fun, Scriptable thisObj, java.lang.Object arg0, Context cx, Scriptable scope)` Implement ....(arg) call shrinking optimizer code.
`static java.lang.Object` `call2(Callable fun, Scriptable thisObj, java.lang.Object arg0, java.lang.Object arg1, Context cx, Scriptable scope)` Implement ....(arg0, arg1) call shrinking optimizer code.
`static java.lang.Object` `callN(Callable fun, Scriptable thisObj, java.lang.Object[] args, Context cx, Scriptable scope)` Implement ....(arg0, arg1, ...) call shrinking optimizer code.
`static java.lang.Object` `callName(java.lang.Object[] args, java.lang.String name, Context cx, Scriptable scope)` Implement name(args) call shrinking optimizer code.
`static java.lang.Object` `callName0(java.lang.String name, Context cx, Scriptable scope)` Implement name() call shrinking optimizer code.
`static java.lang.Object` `callProp0(java.lang.Object value, java.lang.String property, Context cx, Scriptable scope)` Implement x.property() call shrinking optimizer code.
`static java.lang.Object` `callSpecial(Context cx, Callable fun, Scriptable thisObj, java.lang.Object[] args, Scriptable scope, Scriptable callerThis, int callType, java.lang.String fileName, int lineNumber)`
`static Scriptable` `createNativeGenerator(NativeFunction funObj, Scriptable scope, Scriptable thisObj, int maxLocals, int maxStack)`
`static java.lang.Object` `elemIncrDecr(java.lang.Object obj, double index, Context cx, int incrDecrMask)`
`static java.lang.Object[]` `getGeneratorLocalsState(java.lang.Object obj)`
`static java.lang.Object[]` `getGeneratorStackState(java.lang.Object obj)`
`static void` `initFunction(NativeFunction fn, int functionType, Scriptable scope, Context cx)`
`static void` `main(Script script, java.lang.String[] args)`
`static Scriptable` `newArrayLiteral(java.lang.Object[] objects, java.lang.String encodedInts, int skipCount, Context cx, Scriptable scope)`
`static java.lang.Object` `newObjectSpecial(Context cx, java.lang.Object fun, java.lang.Object[] args, Scriptable scope, Scriptable callerThis, int callType)`
`static java.lang.Object[]` `padStart(java.lang.Object[] currentArgs, int count)`
`static void` `throwStopIteration(java.lang.Object obj)`
`static java.lang.Double` `wrapDouble(double num)`

### Methods inherited from class org.mozilla.javascript.ScriptRuntime

`add, add, add, addInstructionCount, applyOrCall, bind, call, callRef, checkRegExpProxy, cmp_LE, cmp_LT, constructError, constructError, constructError, createFunctionActivation, delete, delete, deleteObjectElem, doTopCall, elemIncrDecr, enterActivationFunction, enterDotQuery, enterWith, enumId, enumInit, enumInit, enumNext, enumValue, eq, escapeAttributeValue, escapeString, escapeString, escapeTextValue, evalSpecial, exitActivationFunction, getArrayElements, getElemFunctionAndThis, getGlobal, getLibraryScopeOrNull, getMessage, getMessage0, getMessage1, getMessage2, getMessage3, getMessage4, getNameFunctionAndThis, getObjectElem, getObjectElem, getObjectElem, getObjectIndex, getObjectIndex, getObjectProp, getObjectProp, getObjectProp, getObjectPropNoWarn, getPropFunctionAndThis, getPropFunctionAndThis, getRegExpProxy, getTopCallScope, getTopLevelProp, getValueFunctionAndThis, hasObjectElem, hasTopCall, in, indexFromString, initFunction, initScript, initStandardObjects, instanceOf, isArrayObject, isJSLineTerminator, isJSWhitespaceOrLineTerminator, isPrimitive, isRhinoRuntimeType, jsDelegatesTo, lastStoredScriptable, lastUint32Result, leaveDotQuery, leaveWith, memberRef, memberRef, name, nameIncrDecr, nameIncrDecr, nameRef, nameRef, newArrayLiteral, newBuiltinObject, newCatchScope, newObject, newObject, newObjectLiteral, newObjectLiteral, newSpecial, notFoundError, notFunctionError, notFunctionError, notFunctionError, numberToString, padArguments, propIncrDecr, refDel, refGet, refIncrDecr, refSet, searchDefaultNamespace, setBuiltinProtoAndParent, setConst, setDefaultNamespace, setEnumNumbers, setFunctionProtoAndParent, setName, setObjectElem, setObjectElem, setObjectIndex, setObjectIndex, setObjectProp, setObjectProp, setObjectProtoAndParent, setRegExpProxy, shallowEq, specialRef, storeUint32Result, strictSetName, testUint32String, throwError, toBoolean, toCharSequence, toInt32, toInt32, toInt32, toInteger, toInteger, toInteger, toIterator, toNumber, toNumber, toNumber, toObject, toObject, toObject, toObject, toObjectOrNull, toObjectOrNull, toPrimitive, toPrimitive, toString, toString, toString, toUint16, toUint32, toUint32, typeError, typeError0, typeError1, typeError2, typeError3, typeErrorThrower, typeof, typeofName, undefCallError, undefReadError, undefWriteError, updateDotQuery, wrapBoolean, wrapInt, wrapNumber, wrapRegExp`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### zeroObj

    public static final java.lang.Double zeroObj

#### oneObj

    public static final java.lang.Double oneObj

#### minusOneObj

    public static final java.lang.Double minusOneObj

### Constructor Detail

#### OptRuntime

    public OptRuntime()

### Method Detail

#### call0

    public static java.lang.Object call0(Callable fun,
                         Scriptable thisObj,
                         Context cx,
                         Scriptable scope)

Implement ....() call shrinking optimizer code.

#### call1

    public static java.lang.Object call1(Callable fun,
                         Scriptable thisObj,
                         java.lang.Object arg0,
                         Context cx,
                         Scriptable scope)

Implement ....(arg) call shrinking optimizer code.

#### call2

    public static java.lang.Object call2(Callable fun,
                         Scriptable thisObj,
                         java.lang.Object arg0,
                         java.lang.Object arg1,
                         Context cx,
                         Scriptable scope)

Implement ....(arg0, arg1) call shrinking optimizer code.

#### callN

    public static java.lang.Object callN(Callable fun,
                         Scriptable thisObj,
                         java.lang.Object[] args,
                         Context cx,
                         Scriptable scope)

Implement ....(arg0, arg1, ...) call shrinking optimizer code.

#### callName

    public static java.lang.Object callName(java.lang.Object[] args,
                            java.lang.String name,
                            Context cx,
                            Scriptable scope)

Implement name(args) call shrinking optimizer code.

#### callName0

    public static java.lang.Object callName0(java.lang.String name,
                             Context cx,
                             Scriptable scope)

Implement name() call shrinking optimizer code.

#### callProp0

    public static java.lang.Object callProp0(java.lang.Object value,
                             java.lang.String property,
                             Context cx,
                             Scriptable scope)

Implement x.property() call shrinking optimizer code.

#### add

    public static java.lang.Object add(java.lang.Object val1,
                       double val2)

#### add

    public static java.lang.Object add(double val1,
                       java.lang.Object val2)

#### elemIncrDecr

    public static java.lang.Object elemIncrDecr(java.lang.Object obj,
                                double index,
                                Context cx,
                                int incrDecrMask)

#### padStart

    public static java.lang.Object[] padStart(java.lang.Object[] currentArgs,
                              int count)

#### initFunction

    public static void initFunction(NativeFunction fn,
                    int functionType,
                    Scriptable scope,
                    Context cx)

#### callSpecial

    public static java.lang.Object callSpecial(Context cx,
                               Callable fun,
                               Scriptable thisObj,
                               java.lang.Object[] args,
                               Scriptable scope,
                               Scriptable callerThis,
                               int callType,
                               java.lang.String fileName,
                               int lineNumber)

#### newObjectSpecial

    public static java.lang.Object newObjectSpecial(Context cx,
                                    java.lang.Object fun,
                                    java.lang.Object[] args,
                                    Scriptable scope,
                                    Scriptable callerThis,
                                    int callType)

#### wrapDouble

    public static java.lang.Double wrapDouble(double num)

#### newArrayLiteral

    public static Scriptable newArrayLiteral(java.lang.Object[] objects,
                             java.lang.String encodedInts,
                             int skipCount,
                             Context cx,
                             Scriptable scope)

#### main

    public static void main(Script script,
            java.lang.String[] args)

#### throwStopIteration

    public static void throwStopIteration(java.lang.Object obj)

#### createNativeGenerator

    public static Scriptable createNativeGenerator(NativeFunction funObj,
                                   Scriptable scope,
                                   Scriptable thisObj,
                                   int maxLocals,
                                   int maxStack)

#### getGeneratorStackState

    public static java.lang.Object[] getGeneratorStackState(java.lang.Object obj)

#### getGeneratorLocalsState

    public static java.lang.Object[] getGeneratorLocalsState(java.lang.Object obj)