## Package org.mozilla.javascript

Interface Summary
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.
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.
Wrapper: Objects that can wrap other values for reflection in the JS environment will implement Wrapper.

Class Summary
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
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.
FunctionObject
IdFunctionObject
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.
NativeCall: This class implements the activation object.
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.
NativeObject: This class implements the Object native object.
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.
ScriptRuntime: This is the class that implements the runtime.
ScriptStackElement: This class represents an element on the script execution stack.
SecureCaller
SecurityController: This class describes the support needed to implement security.
SecurityUtilities
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
Token.CommentType
TopLevel.Builtins: An enumeration of built-in ECMAScript objects.

Exception Summary
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
RhinoException: The class of exceptions thrown by the JavaScript engine.
WrappedException: A wrapper for runtime exceptions.