Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.mozilla.javascript.optimizer
Class Codegen

    java.lang.Object
      org.mozilla.javascript.optimizer.Codegen

All Implemented Interfaces:
  Evaluator

    public class Codegen

extends java.lang.Object
implements Evaluator

This class generates code for a given IR tree.

Author:
  Norris Boyd, Roger Lawrence

Constructor Summary
`Codegen()`

Method Summary
`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
`java.lang.String` | `getSourcePositionFromStack(Context cx, int[] linep)` Get the source position information by examining the stack.
`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

### Codegen

    public Codegen()

Method Detail

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

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

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

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

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD