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
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `OptRuntime.GeneratorState`

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

      `ScriptRuntime.MessageProvider`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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_IN_ORDER, 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

    All Methods Static Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `static java.lang.Object` | `add(double val1, java.lang.Object val2)`
    `static java.lang.Object` | `add(java.lang.Object val1, double val2)`
    `static Function` | `bindThis(NativeFunction fn, Context cx, Scriptable scope, Scriptable thisObj)`
    `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)` Deprecated. Use `elemIncrDecr(Object, double, Context, Scriptable, int)` instead
    `static java.lang.Object` | `elemIncrDecr(java.lang.Object obj, double index, Context cx, Scriptable scope, 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, createArrowFunctionActivation, createFunctionActivation, createFunctionActivation, delete, delete, delete, deleteObjectElem, doTopCall, doTopCall, elemIncrDecr, elemIncrDecr, enterActivationFunction, enterDotQuery, enterWith, enumId, enumInit, enumInit, enumInit, enumNext, enumValue, eq, escapeAttributeValue, escapeString, escapeString, escapeTextValue, evalSpecial, exitActivationFunction, getArrayElements, getElemFunctionAndThis, getElemFunctionAndThis, getGlobal, getLibraryScopeOrNull, getMessage, getMessage0, getMessage1, getMessage2, getMessage3, getMessage4, getNameFunctionAndThis, getObjectElem, getObjectElem, getObjectElem, getObjectIndex, getObjectIndex, getObjectIndex, getObjectProp, getObjectProp, getObjectProp, getObjectPropNoWarn, getObjectPropNoWarn, getPropFunctionAndThis, getPropFunctionAndThis, getRegExpProxy, getTopCallScope, getTopLevelProp, getValueFunctionAndThis, hasObjectElem, hasTopCall, in, indexFromString, initFunction, initSafeStandardObjects, initScript, initStandardObjects, instanceOf, isArrayObject, isJSLineTerminator, isJSWhitespaceOrLineTerminator, isNaN, 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, propIncrDecr, rangeError, refDel, refGet, refIncrDecr, refIncrDecr, refSet, refSet, same, searchDefaultNamespace, setBuiltinProtoAndParent, setConst, setDefaultNamespace, setEnumNumbers, setFunctionProtoAndParent, setName, setObjectElem, setObjectElem, setObjectElem, setObjectIndex, setObjectIndex, setObjectIndex, setObjectProp, setObjectProp, setObjectProp, setObjectProtoAndParent, setRegExpProxy, shallowEq, specialRef, specialRef, storeUint32Result, strictSetName, testUint32String, throwCustomError, 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, typeErrorThrower, typeof, typeofName, undefCallError, undefReadError, undefWriteError, updateDotQuery, wrapBoolean, wrapException, 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

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

      Deprecated. Use `elemIncrDecr(Object, double, Context, Scriptable, int)` instead

    - #### elemIncrDecr

          public static java.lang.Object elemIncrDecr(java.lang.Object obj,
                                                      double index,
                                                      Context cx,
                                                      Scriptable scope,
                                                      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)

    - #### bindThis

          public static Function bindThis(NativeFunction fn,
                                          Context cx,
                                          Scriptable scope,
                                          Scriptable thisObj)

    - #### 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)