# Package org.mozilla.javascript

- Interface Summary
  Interface | Description
  --- | ---
  Callable | Generic notion of callable object that can execute some script-related code upon request with specified values for script scope and this objects.
  ClassShutter | Embeddings that wish to filter Java classes that are visible to scripts through the LiveConnect, should implement this interface.
  ConstProperties |
  Context.ClassShutterSetter |
  ContextAction | Interface to represent arbitrary action that requires to have Context object associated with the current thread for its execution.
  ContextFactory.GlobalSetter |
  ContextFactory.Listener | Listener of `Context` creation and release events.
  ContextListener | Deprecated. Embeddings that wish to customize newly created `Context` instances should implement `ContextFactory.Listener`.
  ErrorReporter | This is interface defines a protocol for the reporting of errors during JavaScript translation or execution.
  Evaluator | Abstraction of evaluation, which can be implemented either by an interpreter or compiler.
  ExternalArrayData | Implement this interface in order to allow external data to be attached to a ScriptableObject.
  Function | This is interface that all functions in JavaScript must implement.
  GeneratedClassLoader | Interface to define classes from generated byte code.
  IdFunctionCall | Master for id-based functions that knows their properties and how to execute them.
  RefCallable | Object that can allows assignments to the result of function calls.
  RegExpProxy | A proxy for the regexp package, so that the regexp package can be loaded optionally.
  Script | All compiled scripts implement this interface.
  Scriptable | This is interface that all objects in JavaScript must implement.
  ScriptRuntime.MessageProvider | This is an interface defining a message provider.
  Symbol | A Symbol is a JavaScript objecy that obeys the special properties of the Symbol prototype.
  SymbolScriptable | This interface may be combined with any object that implements Scriptable to add support for properties keyed by Symbol objects (as opposed to String and number objects as in previous versions of JavaScript.
  Wrapper | Objects that can wrap other values for reflection in the JS environment will implement Wrapper.

- Class Summary
  Class | Description
  --- | ---
  ArrowFunction | The class for Arrow Function Definitions EcmaScript 6 Rev 14, March 8, 2013 Draft spec , 13.2
  BaseFunction | The base class for Function objects See ECMA 15.3.
  BoundFunction | The class for results of the Function.bind operation EcmaScript 5 spec, 15.3.4.5
  ClassCache | Cache of generated classes and data structures to access Java runtime from JavaScript.
  CompilerEnvirons |
  ConsString | This class represents a string composed of two components, each of which may be a `java.lang.String` or another ConsString.
  Context | This class represents the runtime context of an executing script.
  ContextFactory | Factory class that Rhino runtime uses to create new `Context` instances.
  Decompiler | The following class save decompilation information about the source.
  DefiningClassLoader | Load generated classes.
  Delegator | This is a helper class for implementing wrappers around Scriptable objects.
  ES6Iterator |
  FunctionObject |
  IdFunctionObject |
  IdFunctionObjectES6 |
  IdScriptableObject | Base class for native object implementation that uses IdFunctionObject to export its methods to script via .prototype object.
  ImporterTopLevel | Class ImporterTopLevel This class defines a ScriptableObject that can be instantiated as a top-level ("global") object to provide functionality similar to Java's "import" statement.
  InterfaceAdapter | Adapter to use JS function as implementation of Java interfaces with single method or multiple methods with the same signature.
  Interpreter |
  IRFactory | This class rewrites the parse tree into an IR suitable for codegen.
  JavaAdapter |
  Kit | Collection of utilities
  LazilyLoadedCtor | Avoid loading classes unless they are used.
  NativeArray | This class implements the Array native object.
  NativeArray.ElementComparator |
  NativeArray.StringLikeComparator |
  NativeArrayIterator |
  NativeCall | This class implements the activation object.
  NativeCallSite | This class is used by the V8 extension "Error.prepareStackTrace." It is passed to that function, which may then use it to format the stack as it sees fit.
  NativeContinuation |
  NativeFunction | This class implements the Function native object.
  NativeGenerator | This class implements generator objects.
  NativeGlobal | This class implements the global native object (function and value properties only).
  NativeIterator | This class implements iterator objects.
  NativeIterator.WrappedJavaIterator |
  NativeJavaArray | This class reflects Java arrays into the JavaScript environment.
  NativeJavaClass | This class reflects Java classes into the JavaScript environment, mainly for constructors and static members.
  NativeJavaConstructor | This class reflects a single Java constructor into the JavaScript environment.
  NativeJavaMethod | This class reflects Java methods into the JavaScript environment and handles overloading of methods.
  NativeJavaObject | This class reflects non-Array Java objects into the JavaScript environment.
  NativeJavaPackage | This class reflects Java packages into the JavaScript environment.
  NativeJavaTopPackage | This class reflects Java packages into the JavaScript environment.
  NativeJSON | This class implements the JSON native object.
  NativeObject | This class implements the Object native object.
  NativeStringIterator |
  NativeSymbol | This is an implementation of the standard "Symbol" type that implements all of its weird properties.
  NativeWith | This class implements the object lookup required for the `with` statement.
  Node | This class implements the root of the intermediate representation.
  NodeTransformer | This class transforms a tree to a lower-level representation for codegen.
  ObjArray | Implementation of resizable array with focus on minimizing memory usage by storing few initial array elements in object fields.
  ObjToIntMap | Map to associate objects to integers.
  ObjToIntMap.Iterator |
  Parser | This class implements the JavaScript parser.
  PolicySecurityController | A security controller relying on Java `Policy` in effect.
  PolicySecurityController.SecureCaller |
  Ref | Generic notion of reference object that know how to query/modify the target objects based on some property/index.
  RhinoSecurityManager | A `java.lang.SecurityManager` subclass that provides access to the current top-most script class on the execution stack.
  ScriptableObject | This is the default implementation of the Scriptable interface.
  ScriptableObject.KeyComparator | This comparator sorts property fields in spec-compliant order.
  ScriptRuntime | This is the class that implements the runtime.
  ScriptRuntimeES6 |
  ScriptStackElement | This class represents an element on the script execution stack.
  SecureCaller |
  SecurityController | This class describes the support needed to implement security.
  SecurityUtilities |
  Sorting |
  SymbolKey | A SymbolKey is one of the implementations of Symbol.
  Synchronizer | This class provides support for implementing Java-style synchronized methods in Javascript.
  Token | This class implements the JavaScript scanner.
  TopLevel | A top-level scope object that provides special means to cache and preserve the initial values of the built-in constructor properties for better ECMAScript compliance.
  UintMap | Map to associate non-negative integers to objects or integers.
  Undefined | This class implements the Undefined value in JavaScript.
  UniqueTag | Class instances represent serializable tags to mark special Object values.
  VMBridge |

  WrapFactory

  Embeddings that wish to provide their own custom wrappings for Java objects may extend this class and call `Context.setWrapFactory(WrapFactory)` Once an instance of this class or an extension of this class is enabled for a given context (by calling setWrapFactory on that context), Rhino will call the methods of this class whenever it needs to wrap a value resulting from a call to a Java method or an access to a Java field.

- Enum Summary
  Enum | Description
  --- | ---
  StackStyle | This class distinguishes between the three different supported stack trace formats.
  Token.CommentType |
  TopLevel.Builtins | An enumeration of built-in ECMAScript objects.

- Exception Summary
  Exception | Description
  --- | ---
  ClassDefinitionException | Deprecated. The exception is no longer thrown by Rhino runtime as `EvaluatorException` is used instead.
  ContinuationPending | Exception thrown by `Context.executeScriptWithContinuations(Script, Scriptable)` and `Context.callFunctionWithContinuations(Callable, Scriptable, Object[])` when execution encounters a continuation captured by `Context.captureContinuation()`.
  EcmaError | The class of exceptions raised by the engine as described in ECMA edition 3.
  EvaluatorException | The class of exceptions thrown by the JavaScript engine.
  JavaScriptException | Java reflection of JavaScript exceptions.
  NativeGenerator.GeneratorClosedException |
  NotAFunctionException | Deprecated. The exception is no longer thrown by Rhino runtime as `EvaluatorException` is used instead.
  PropertyException | Deprecated. This exception is no longer thrown by Rhino runtime.
  RhinoException | The class of exceptions thrown by the JavaScript engine.
  WrappedException | A wrapper for runtime exceptions.