All Classes and Interfaces
Class
Description
This is a specialization of Slot to store various types of values that are retrieved dynamically
using Java and JavaScript functions.
AST node for a JavaScript 1.7 Array comprehension.
AST node for a single 'for (foo in bar)' loop construct in a JavaScript 1.7 Array comprehension.
AST node for an Array literal.
The class for Arrow Function Definitions EcmaScript 6 Rev 14, March 8, 2013 Draft spec , 13.2
AST node representing the set of assignment operators such as
=
, *=
and
+=
.Base class for AST node types.
Node for the root of a parse tree.
The base class for Function objects.
AST node for a BigInt literal.
This class makes the Bindings object into a Scriptable.
A block statement delimited by curly braces.
The class for results of the Function.bind operation EcmaScript 5 spec, 15.3.4.5
A break statement.
This class defines the following built-in functions for the RhinoScriptEngine.
This class provides opcode values expected by the JVM in Java class files.
Abstract base class that implements caching of loaded module scripts.
Instances of this class represent a loaded and cached module script.
Generic notion of callable object that can execute some script-related code upon request with
specified values for script scope and this objects.
Node representing a catch-clause of a try-statement.
Cache of generated classes and data structures to access Java runtime from JavaScript.
Generates class files from script sources.
ClassFileWriter
Thrown for cases where the error in generating the class file is due to a program size
constraints rather than a likely bug in the compiler.
Embeddings that wish to filter Java classes that are visible to scripts through the LiveConnect,
should implement this interface.
This class generates code for a given IR tree.
Node representing comments.
AST node representing the ternary operator.
This class represents a string composed of two components, each of which may be a
java.lang.String
or another ConsString.An interface that can be used to implement a constructor function as a lambda.
This class represents the runtime context of an executing script.
Interface to represent arbitrary action that requires to have Context object associated with the
current thread for its execution.
Factory class that Rhino runtime uses to create new
Context
instances.Listener of
Context
creation and release events.Deprecated.
Exception thrown by
Context.executeScriptWithContinuations(Script, Scriptable)
and Context.callFunctionWithContinuations(Callable, Scriptable, Object[])
when execution encounters a continuation captured by Context.captureContinuation()
.A continue statement.
Numeric conversions from section 7 of the ECMAScript 6 standard.
Interface to implement if the application is interested in receiving debug information during
execution of a particular script or function.
This interface exposes debugging information from objects.
This interface exposes debugging information from executable code (either functions or top-level
scripts).
Interface to implement if the application is interested in receiving debug information.
The following class save decompilation information about the source.
The default heuristic for calculating cache expiry of URL-based resources.
Load generated classes.
This is a helper class for implementing wrappers around Scriptable objects.
Common interface for
ArrayLiteral
and ObjectLiteral
node types, both of which may
appear in "destructuring" expressions or contexts.Dim or Debugger Implementation for Rhino.
Class to store information about a stack.
Class to store information about a function.
Class to store information about a script source.
Object to represent one stack frame.
Do statement.
The class of exceptions raised by the engine as described in ECMA edition 3.
AST node for an indexed property reference, such as
foo['bar']
or foo[2]
.AST node for an empty expression.
AST node for an empty statement.
Environment, intended to be instantiated at global scope, provides a natural way to access System
properties from JavaScript.
An error reporter that gathers the errors and warnings for later display.
AST node representing a parse error or a warning.
This is interface defines a protocol for the reporting of errors during JavaScript translation or
execution.
Abstraction of evaluation, which can be implemented either by an interpreter or compiler.
The class of exceptions thrown by the JavaScript engine.
AST node representing an expression in a statement context.
Implement this interface in order to allow external data to be attached to a ScriptableObject.
For-in or for-each-in or for-of statement.
C-style for-loop statement.
This is interface that all functions in JavaScript must implement.
AST node for a function call.
A JavaScript function declaration or expression.
Interface to define classes from generated byte code.
This class provides for sharing functions across multiple threads.
Interface for communication between the debugger and its GUI.
This class implements the SlotMap interface using a java.util.HashMap.
This generic hash table class is used by Set and Map.
One entry in the hash table.
This is interface defines a protocol for the reporting of errors during JavaScript translation in
IDE-mode.
Master for id-based functions that knows their properties and how to execute them.
Base class for native object implementation that uses IdFunctionObject to export its methods to
script via <class-name>.prototype object.
If-else statement.
This class is a singleton that just exists to serve up the implementation version.
Class ImporterTopLevel
AST node representing an infix (binary operator) expression.
Adapter to use JS function as implementation of Java interfaces with single method or multiple
methods with the same signature.
This class rewrites the parse tree into an IR suitable for codegen.
This is a class that makes it easier to iterate over "iterator-like" objects as defined in the
ECMAScript spec.
Java reflection of JavaScript exceptions.
This class provides implementations of converters for Java objects to be used by the
JSON.stringify method.
An annotation that marks a Java method as JavaScript constructor.
An annotation that marks a Java method as JavaScript function.
An annotation that marks a Java method as JavaScript getter.
This class converts a stream of JSON tokens into a JSON value.
An annotation that marks a Java method as JavaScript setter.
An annotation that marks a Java method as JavaScript static function.
This example shows how to create a simple JTreeTable component, by using a JTree as a renderer
(and editor) for the cells in a particular column in the JTable.
Used for code generation.
AST node for keyword literals: currently,
this
, null
, true
,
false
, and debugger
.Collection of utilities
AST node representing a label.
A labeled statement.
This class implements a JavaScript function that may be used as a constructor by delegating to an
interface that can be easily implemented as a lambda.
This class implements a single JavaScript function that has the prototype of the built-in
Function class, and which is implemented using a single function that can easily be implemented
using a lambda expression.
This is a specialization of property access using some lambda functions.
Avoid loading classes unless they are used.
This is a specialization of Slot to store values that are retrieved via calls to script
functions.
AST node for let statements and expressions.
Abstract base type for loops.
Rhino script debugger main class.
The shell program.
A top-level module scope.
Represents a compiled CommonJS module script.
Should be implemented by Rhino embeddings to allow the require() function to obtain
ModuleScript
objects.Represents the source text of the module as a tuple of a reader, a URI, a security domain, and a
cache validator.
Implemented by objects that can provide the source text for the script.
A base implementation for all module script providers that actually load module scripts.
A multiplexer for module script providers.
AST node for a simple name.
This class implements the Array native object.
A NativeArrayBuffer is the backing buffer for a typed array.
This class is the abstract parent for all views of the array.
This class implements the activation object.
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.
This class represents the JavaScript "DataView" interface, which allows direct manipulations of
the bytes in a NativeArrayBuffer.
An array view that stores 32-bit quantities and implements the JavaScript "loat32Array"
interface.
An array view that stores 64-bit quantities and implements the JavaScript "Float64Array"
interface.
This class implements the Function native object.
This class implements generator objects.
This class implements the global native object (function and value properties only).
An array view that stores 16-bit quantities and implements the JavaScript "Int16Array" interface.
An array view that stores 32-bit quantities and implements the JavaScript "Int32Array" interface.
An array view that stores 8-bit quantities and implements the JavaScript "Int8Array" interface.
This class implements iterator objects.
This class reflects Java arrays into the JavaScript environment.
This class reflects Java classes into the JavaScript environment, mainly for constructors and
static members.
This class reflects a single Java constructor into the JavaScript environment.
NativeJavaList
is a wrapper for java objects implementing java.util.List
interface.NativeJavaMap
is a wrapper for java objects implementing java.util.Map
interface.This class reflects Java methods into the JavaScript environment and handles overloading of
methods.
This class reflects non-Array Java objects into the JavaScript environment.
This class reflects Java packages into the JavaScript environment.
This class reflects Java packages into the JavaScript environment.
This class implements the JSON native object.
This class implements the Object native object.
This class implements the RegExp native object.
This is an implementation of the standard "Symbol" type that implements all of its weird
properties.
This class is the abstract parent for all of the various typed arrays.
An array view that stores 16-bit quantities and implements the JavaScript "Uint16Array"
interface.
An array view that stores 32-bit quantities and implements the JavaScript "Uint32Array"
interface.
An array view that stores 8-bit quantities and implements the JavaScript "Uint8Array" interface.
An array view that stores 8-bit quantities and implements the JavaScript "Uint8ClampedArray"
interface.
This is an implementation of the ES6 WeakMap class.
This is an implementation of the ES6 WeakSet class.
This class implements the object lookup required for the
with
statement.New expression.
This class implements the root of the intermediate representation.
This class transforms a tree to a lower-level representation for codegen.
Simple visitor interface for traversing the AST.
AST node for a Number literal.
Implementation of resizable array with focus on minimizing memory usage by storing few initial
array elements in object fields.
AST node for an Object literal (also called an Object initialiser in Ecma-262).
AST node for a single name:value entry in an Object literal.
Map to associate objects to integers.
AST node for a parenthesized expression.
Breaks a "contentType; charset=encoding" MIME type into content type and encoding parts.
Encapsulates information for a JavaScript parse error or warning.
This class implements the JavaScript parser.
A security controller relying on Java
Policy
in effect.AST node for the '.' operator.
Defines action to perform in response to quit command.
Generic notion of reference object that know how to query/modify the target objects based on some
property/index.
Object that can allows assignments to the result of function calls.
AST node for a RegExp literal.
A proxy for the regexp package, so that the regexp package can be loaded optionally.
Implements the require() function as defined by Common JS modules.
A builder for
Require
instances.Return statement.
The class of exceptions thrown by the JavaScript engine.
This is the implementation of the standard ScriptEngine interface for Rhino.
This is an implementation of the standard Java "ScriptEngine" for Rhino.
A
java.lang.SecurityManager
subclass that provides access to the current top-most
script class on the execution stack.Represents a scope in the lexical scope chain.
Interface to provide a scope object for script evaluation to the debugger.
All compiled scripts implement this interface.
This is interface that all objects in JavaScript must implement.
Class ScriptableInputStream is used to read in a JavaScript object or function previously
serialized with a ScriptableOutputStream.
This is the default implementation of the Scriptable interface.
This comparator sorts property fields in spec-compliant order.
Class ScriptableOutputStream is an ObjectOutputStream used to serialize JavaScript objects and
functions.
Base type for
AstRoot
and FunctionNode
nodes, which need to collect much of the
same information.This is the class that implements the runtime.
This is an interface defining a message provider.
Helper to return a string or an integer.
This class represents an element on the script execution stack.
This class describes the support needed to implement security.
Deprecated.
A Slot is the base class for all properties stored in the ScriptableObject class.
A SlotMap is an interface to the main data structure that contains all the "Slots" that back a
ScriptableObject.
A module script provider that uses a module source provider to load modules and caches the loaded
modules.
Interface to provide a source of scripts to the debugger.
This class distinguishes between the three different supported stack trace formats.
AST node for a single- or double-quoted string literal.
A module script provider that uses a module source provider to load modules and caches the loaded
modules.
A utility class for lazily instantiated substrings.
GUI for the Rhino debugger.
Switch-case AST node type.
Switch statement AST node type.
Represents a symbol-table entry.
A Symbol is a JavaScript objecy that obeys the special properties of the Symbol prototype.
A SymbolKey is one of the implementations of Symbol.
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.
This class provides support for implementing Java-style synchronized methods in Javascript.
AST node for a Tagged Template Literal.
AST node for Template Literal Characters.
AST node for a Template literal.
Throw statement.
This class supports the "setTimeout" and "clearTimeout" methods of semi-standard JavaScript.
This class implements the JavaScript scanner.
Error reporter for tools.
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.
An enumeration of built-in ECMAScript objects.
TreeTableModel is the model used by a JTreeTable.
This is a wrapper class takes a TreeTableModel and implements the table model interface.
Try/catch/finally statement.
Map to associate non-negative integers to objects or integers.
AST node representing unary operators such as
typeof
and delete
.This class implements the Undefined value in JavaScript.
This class is responsible for handling tracking of unhandled Promise rejections.
Class instances represent serializable tags to mark special Object values.
AST node representing update operators such as
++
.Implemented by objects that can be used as heuristic strategies for calculating the expiry of a
cached resource in cases where the server of the resource doesn't provide explicit expiry
information.
Interface for URL connection based security domain providers.
A URL-based script provider that can load modules against a set of base privileged and fallback
URIs.
A list of one or more var, const or let declarations.
A variable declaration or initializer, part of a
VariableDeclaration
expression.While statement.
With statement.
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.A wrapper for runtime exceptions.
Objects that can wrap other values for reflection in the JS environment will implement Wrapper.
AST node representing an E4X
foo.(bar)
query expression.AST node for an E4X XML
[expr]
member-ref expression.AST node for an embedded JavaScript expression within an E4X XML literal.
Abstract base type for components that comprise an
XmlLiteral
object.An object which specifies an XMLLib implementation to be used at runtime.
AST node for an E4X (Ecma-357) embedded XML literal.
AST node for E4X ".@" and ".." expressions, such as
foo..bar
, foo..@bar
,
@foo.@bar
, and foo..@ns::*
.This Interface describes what all XML objects (XML, XMLList) should have in common.
AST node for an E4X XML
[expr]
property-ref expression.Base class for E4X XML attribute-access or property-get expressions.
AST node for an XML-text-only component of an XML literal expression.
AST node for JavaScript 1.7
yield
expression or statement.
Context
instances should implementContextFactory.Listener
.