## org.mozilla.javascript
Class Interpreter

    java.lang.Object
      org.mozilla.javascript.Interpreter

All Implemented Interfaces:
  Evaluator

    public final class Interpreter

extends java.lang.Object
implements Evaluator

Constructor Summary
`Interpreter()`

Method Summary
`static NativeContinuation` `captureContinuation(Context cx)`
`void` `captureStackInfo(RhinoException ex)` Capture stack information from the given exception.
`java.lang.Object` `compile(CompilerEnvirons compilerEnv, ScriptNode tree, java.lang.String encodedSource, boolean returnFunction)` Compile the script or function from intermediate representation tree into an executable form.
`Function` `createFunctionObject(Context cx, Scriptable scope, java.lang.Object bytecode, java.lang.Object staticSecurityDomain)` Create a function object.
`Script` `createScriptObject(java.lang.Object bytecode, java.lang.Object staticSecurityDomain)` Create a script object.
`java.lang.String` `getPatchedStack(RhinoException ex, java.lang.String nativeStackTrace)` Given a native stack trace, patch it with script-specific source and line information
`java.util.List<java.lang.String>` `getScriptStack(RhinoException ex)` Get the script stack for the given exception
`ScriptStackElement[][]` `getScriptStackElements(RhinoException ex)`
`java.lang.String` `getSourcePositionFromStack(Context cx, int[] linep)` Get the source position information by examining the stack.
`static java.lang.Object` `restartContinuation(NativeContinuation c, Context cx, Scriptable scope, java.lang.Object[] args)`
`static java.lang.Object` `resumeGenerator(Context cx, Scriptable scope, int operation, java.lang.Object savedState, java.lang.Object value)`
`void` `setEvalScriptFlag(Script script)` Mark the given script to indicate it was created by a call to eval() or to a Function constructor.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Interpreter

    public Interpreter()

Method Detail

### compile

    public java.lang.Object compile(CompilerEnvirons compilerEnv,
                                    ScriptNode tree,
                                    java.lang.String encodedSource,
                                    boolean returnFunction)

  Description copied from interface: `Evaluator`
  Compile the script or function from intermediate representation tree into an executable form.

  Specified by:
    `compile` in interface `Evaluator`
  Parameters:
    `compilerEnv` - Compiler environment
    `tree` - parse tree
    `encodedSource` - encoding of the source code for decompilation
    `returnFunction` - if true, compiling a function
  Returns:
    an opaque object that can be passed to either createFunctionObject or createScriptObject, depending on the value of returnFunction

### createScriptObject

    public Script createScriptObject(java.lang.Object bytecode,
                                     java.lang.Object staticSecurityDomain)

  Description copied from interface: `Evaluator`
  Create a script object.

  Specified by:
    `createScriptObject` in interface `Evaluator`
  Parameters:
    `bytecode` - opaque object returned by compile
    `staticSecurityDomain` - security domain
  Returns:
    Script object that can be evaluated

### setEvalScriptFlag

    public void setEvalScriptFlag(Script script)

  Description copied from interface: `Evaluator`
  Mark the given script to indicate it was created by a call to eval() or to a Function constructor.

  Specified by:
    `setEvalScriptFlag` in interface `Evaluator`
  Parameters:
    `script` - script to mark as from eval

### createFunctionObject

    public Function createFunctionObject(Context cx,
                                         Scriptable scope,
                                         java.lang.Object bytecode,
                                         java.lang.Object staticSecurityDomain)

  Description copied from interface: `Evaluator`
  Create a function object.

  Specified by:
    `createFunctionObject` in interface `Evaluator`
  Parameters:
    `cx` - Current context
    `scope` - scope of the function
    `bytecode` - opaque object returned by compile
    `staticSecurityDomain` - security domain
  Returns:
    Function object that can be called

### captureStackInfo

    public void captureStackInfo(RhinoException ex)

  Description copied from interface: `Evaluator`
  Capture stack information from the given exception.

  Specified by:
    `captureStackInfo` in interface `Evaluator`
  Parameters:
    `ex` - an exception thrown during execution

### getSourcePositionFromStack

    public java.lang.String getSourcePositionFromStack(Context cx,
                                                       int[] linep)

  Description copied from interface: `Evaluator`
  Get the source position information by examining the stack.

  Specified by:
    `getSourcePositionFromStack` in interface `Evaluator`
  Parameters:
    `cx` - Context
    `linep` - Array object of length >= 1; getSourcePositionFromStack will assign the line number to linep[0].
  Returns:
    the name of the file or other source container

### getPatchedStack

    public java.lang.String getPatchedStack(RhinoException ex,
                                            java.lang.String nativeStackTrace)

  Description copied from interface: `Evaluator`
  Given a native stack trace, patch it with script-specific source and line information

  Specified by:
    `getPatchedStack` in interface `Evaluator`
  Parameters:
    `ex` - exception
    `nativeStackTrace` - the native stack trace
  Returns:
    patched stack trace

### getScriptStack

    public java.util.List<java.lang.String> getScriptStack(RhinoException ex)

  Description copied from interface: `Evaluator`
  Get the script stack for the given exception

  Specified by:
    `getScriptStack` in interface `Evaluator`
  Parameters:
    `ex` - exception from execution
  Returns:
    list of strings for the stack trace

### getScriptStackElements

    public ScriptStackElement[][] getScriptStackElements(RhinoException ex)

### resumeGenerator

    public static java.lang.Object resumeGenerator(Context cx,
                                                   Scriptable scope,
                                                   int operation,
                                                   java.lang.Object savedState,
                                                   java.lang.Object value)

### restartContinuation

    public static java.lang.Object restartContinuation(NativeContinuation c,
                                                       Context cx,
                                                       Scriptable scope,
                                                       java.lang.Object[] args)

### captureContinuation

    public static NativeContinuation captureContinuation(Context cx)