org.mozilla.javascript
Class CompilerEnvirons

java.lang.Object
  extended by org.mozilla.javascript.CompilerEnvirons

public class CompilerEnvirons
extends java.lang.Object


Constructor Summary
CompilerEnvirons()
           
 
Method Summary
 java.util.Set<java.lang.String> getActivationNames()
           
 boolean getAllowSharpComments()
           
 ErrorReporter getErrorReporter()
           
 int getLanguageVersion()
           
 int getOptimizationLevel()
           
 boolean getWarnTrailingComma()
           
static CompilerEnvirons ideEnvirons()
          Returns a CompilerEnvirons suitable for using Rhino in an IDE environment.
 void initFromContext(Context cx)
           
 boolean isAllowMemberExprAsFunctionName()
          Extension to ECMA: if 'function <name>' is not followed by '(', assume <name> starts a memberExpr
 boolean isGenerateDebugInfo()
           
 boolean isGenerateObserverCount()
           
 boolean isGeneratingSource()
           
 boolean isIdeMode()
           
 boolean isRecordingComments()
           
 boolean isRecordingLocalJsDocComments()
           
 boolean isReservedKeywordAsIdentifier()
           
 boolean isStrictMode()
           
 boolean isXmlAvailable()
           
 boolean recoverFromErrors()
           
 boolean reportWarningAsError()
           
 void setActivationNames(java.util.Set<java.lang.String> activationNames)
           
 void setAllowMemberExprAsFunctionName(boolean flag)
           
 void setAllowSharpComments(boolean allow)
          Mozilla sources use the C preprocessor.
 void setErrorReporter(ErrorReporter errorReporter)
           
 void setGenerateDebugInfo(boolean flag)
           
 void setGenerateObserverCount(boolean generateObserverCount)
          Turn on or off generation of code with callbacks to track the count of executed instructions.
 void setGeneratingSource(boolean generatingSource)
          Specify whether or not source information should be generated.
 void setIdeMode(boolean ide)
          Puts the parser in "IDE" mode.
 void setLanguageVersion(int languageVersion)
           
 void setOptimizationLevel(int level)
           
 void setRecordingComments(boolean record)
           
 void setRecordingLocalJsDocComments(boolean record)
           
 void setRecoverFromErrors(boolean recover)
          Turn on or off full error recovery.
 void setReservedKeywordAsIdentifier(boolean flag)
           
 void setStrictMode(boolean strict)
           
 void setWarnTrailingComma(boolean warn)
           
 void setXmlAvailable(boolean flag)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CompilerEnvirons

public CompilerEnvirons()
Method Detail

initFromContext

public void initFromContext(Context cx)

getErrorReporter

public final ErrorReporter getErrorReporter()

setErrorReporter

public void setErrorReporter(ErrorReporter errorReporter)

getLanguageVersion

public final int getLanguageVersion()

setLanguageVersion

public void setLanguageVersion(int languageVersion)

isGenerateDebugInfo

public final boolean isGenerateDebugInfo()

setGenerateDebugInfo

public void setGenerateDebugInfo(boolean flag)

isReservedKeywordAsIdentifier

public final boolean isReservedKeywordAsIdentifier()

setReservedKeywordAsIdentifier

public void setReservedKeywordAsIdentifier(boolean flag)

isAllowMemberExprAsFunctionName

public final boolean isAllowMemberExprAsFunctionName()
Extension to ECMA: if 'function <name>' is not followed by '(', assume <name> starts a memberExpr


setAllowMemberExprAsFunctionName

public void setAllowMemberExprAsFunctionName(boolean flag)

isXmlAvailable

public final boolean isXmlAvailable()

setXmlAvailable

public void setXmlAvailable(boolean flag)

getOptimizationLevel

public final int getOptimizationLevel()

setOptimizationLevel

public void setOptimizationLevel(int level)

isGeneratingSource

public final boolean isGeneratingSource()

getWarnTrailingComma

public boolean getWarnTrailingComma()

setWarnTrailingComma

public void setWarnTrailingComma(boolean warn)

isStrictMode

public final boolean isStrictMode()

setStrictMode

public void setStrictMode(boolean strict)

reportWarningAsError

public final boolean reportWarningAsError()

setGeneratingSource

public void setGeneratingSource(boolean generatingSource)
Specify whether or not source information should be generated.

Without source information, evaluating the "toString" method on JavaScript functions produces only "[native code]" for the body of the function. Note that code generated without source is not fully ECMA conformant.


isGenerateObserverCount

public boolean isGenerateObserverCount()
Returns:
true iff code will be generated with callbacks to enable instruction thresholds

setGenerateObserverCount

public void setGenerateObserverCount(boolean generateObserverCount)
Turn on or off generation of code with callbacks to track the count of executed instructions. Currently only affects JVM byte code generation: this slows down the generated code, but code generated without the callbacks will not be counted toward instruction thresholds. Rhino's interpretive mode does instruction counting without inserting callbacks, so there is no requirement to compile code differently.

Parameters:
generateObserverCount - if true, generated code will contain calls to accumulate an estimate of the instructions executed.

isRecordingComments

public boolean isRecordingComments()

setRecordingComments

public void setRecordingComments(boolean record)

isRecordingLocalJsDocComments

public boolean isRecordingLocalJsDocComments()

setRecordingLocalJsDocComments

public void setRecordingLocalJsDocComments(boolean record)

setRecoverFromErrors

public void setRecoverFromErrors(boolean recover)
Turn on or off full error recovery. In this mode, parse errors do not throw an exception, and the parser attempts to build a full syntax tree from the input. Useful for IDEs and other frontends.


recoverFromErrors

public boolean recoverFromErrors()

setIdeMode

public void setIdeMode(boolean ide)
Puts the parser in "IDE" mode. This enables some slightly more expensive computations, such as figuring out helpful error bounds.


isIdeMode

public boolean isIdeMode()

getActivationNames

public java.util.Set<java.lang.String> getActivationNames()

setActivationNames

public void setActivationNames(java.util.Set<java.lang.String> activationNames)

setAllowSharpComments

public void setAllowSharpComments(boolean allow)
Mozilla sources use the C preprocessor.


getAllowSharpComments

public boolean getAllowSharpComments()

ideEnvirons

public static CompilerEnvirons ideEnvirons()
Returns a CompilerEnvirons suitable for using Rhino in an IDE environment. Most features are enabled by default. The ErrorReporter is set to an ErrorCollector.