com.google.javascript.jscomp
Class CompilerOptions

java.lang.Object
  extended by com.google.javascript.jscomp.CompilerOptions
All Implemented Interfaces:
Serializable, Cloneable

public class CompilerOptions
extends Object
implements Serializable, Cloneable

Compiler options

See Also:
Serialized Form

Nested Class Summary
static interface CompilerOptions.AliasTransformation
          A Role Specific Interface for the JsCompiler to report aliases used to change the code during a compile.
static interface CompilerOptions.AliasTransformationHandler
          A Role Specific Interface for JsCompiler that represents a data holder object which is used to store goog.scope alias code changes to code made during a compile.
static class CompilerOptions.LanguageMode
          When to do the extra sanity checks
static class CompilerOptions.Reach
           
static class CompilerOptions.TracerMode
           
static class CompilerOptions.TweakProcessing
           
 
Field Summary
 CheckLevel aggressiveVarCheck
           
 Set<String> aliasableStrings
          If set to a non-empty set, those strings literals will be aliased to a single global instance per string, to avoid creating more objects than necessary.
 boolean aliasAllStrings
          Aliases all string literals to global instances, to avoid creating more objects than necessary (if true, overrides any set of strings passed in to aliasableStrings)
 boolean aliasExternals
          Adds variable aliases for externals to reduce code size
 boolean aliasKeywords
          Aliases true, false, and null to variables with shorter names.
 String aliasStringsBlacklist
          A blacklist in the form of a regular expression to block strings that contains certain words from being aliased.
 boolean ambiguateProperties
          Rename unrelated properties to the same name to reduce code size.
 AnonymousFunctionNamingPolicy anonymousFunctionNaming
          Give anonymous functions names for easier debugging
 CheckLevel brokenClosureRequiresLevel
           
 boolean checkControlStructures
          Checks for invalid control structures
 CheckLevel checkGlobalNamesLevel
           
 CheckLevel checkGlobalThisLevel
           
 String checkMissingGetCssNameBlacklist
          Regex of string literals that may only appear in goog.getCssName arguments.
 CheckLevel checkMissingGetCssNameLevel
           
 CheckLevel checkMissingReturn
           
 CheckLevel checkProvides
           
 CheckLevel checkRequires
          Checks for missing goog.require() calls
 boolean checkSuspiciousCode
          Checks for suspicious statements that have no effect
 boolean checkSymbols
          Checks that all symbols are defined
 boolean checkTypes
          Checks types on expressions
 CheckLevel checkUnreachableCode
           
 boolean closurePass
          Processes goog.provide() and goog.require() calls
 boolean coalesceVariableNames
          Merge two variables together as one.
 boolean collapseAnonymousFunctions
          Collapses anonymous function declarations into named function declarations
 boolean collapseProperties
          Flattens multi-level property names (e.g.
 boolean collapseVariableDeclarations
          Collapses multiple variable declarations into one
 boolean computeFunctionSideEffects
          Use @nosideeffects annotations, function bodies and name graph to determine if calls have side effects.
 boolean convertToDottedProperties
          Converts quoted property accesses to dot syntax (a['b'] -> a.b)
 boolean crossModuleCodeMotion
          Move code to a deeper module
 boolean crossModuleMethodMotion
          Move methds to a deeper module
 CssRenamingMap cssRenamingMap
          Map used in the renaming of CSS class names.
 com.google.common.collect.Multimap<CustomPassExecutionTime,CompilerPass> customPasses
          Custom passes
 boolean deadAssignmentElimination
          Remove assignments to values that can not be referenced
 boolean devirtualizePrototypeMethods
          Devirtualize prototype method by rewriting them to be static calls that take the this pointer as their first argument
 boolean disambiguateProperties
          Rename properties to disambiguate between unrelated fields based on type information.
 ErrorFormat errorFormat
           
 boolean exportTestFunctions
          Whether to export test functions.
 boolean extractPrototypeMemberDeclarations
          Extracts common prototype member declarations
 boolean flowSensitiveInlineVariables
           
 boolean foldConstants
          Folds constants (e.g.
 boolean gatherCssNames
          Gather CSS names (requires closurePass)
 boolean generateExports
           
 boolean generatePseudoNames
          Generate pseudo names for variables and properties for debugging purposes.
 boolean ideMode
          Configures the compiler for use as an IDE backend.
 boolean inlineConstantVars
          Inlines constants (symbols that are all CAPS)
 boolean inlineFunctions
          Inlines short functions
 boolean inlineGetters
          Inlines trivial getters
 boolean inlineLocalFunctions
          Enhanced function inlining
 boolean inlineVariables
          Inlines variables
 String inputDelimiter
          The string to use as the separator for printInputDelimiter
 byte[] inputPropertyMapSerialized
          Serialized input property renaming map.
 byte[] inputVariableMapSerialized
          Serialized input variable renaming map.
 String instrumentationTemplate
          Instrumentation template to use with #recordFunctionInformation
 boolean jqueryPass
          Processes jQuery aliases
 boolean labelRenaming
          Controls label renaming.
 boolean lineBreak
          Line break the output a bit more aggressively
 String locale
          Compiling locale
 boolean markAsCompiled
          Sets the special "COMPILED" value to true
 boolean markNoSideEffectCalls
          Mark no side effect calls
 MessageBundle messageBundle
          Returns localized replacement for MSG_* variables
 boolean moveFunctionDeclarations
          Move top level function declarations to the top
 boolean optimizeArgumentsArray
          Provide formal names for elements of arguments array.
 boolean optimizeCalls
          Remove unused parameters from call sites.
 boolean optimizeParameters
          Remove unused and constant parameters.
 boolean optimizeReturns
          Remove unused return values.
 boolean preferLineBreakAtEndOfFile
          Prefer line breaks at end of file
 boolean prettyPrint
          Output in pretty indented format
 boolean printInputDelimiter
          Prints a separator comment before each js script
 PropertyRenamingPolicy propertyRenaming
          Controls which properties get renamed.
 boolean recordFunctionInformation
          Record function information
 boolean removeDeadCode
          Removes code that will never execute
 boolean removeTryCatchFinally
          Removes try...catch...finally blocks for easier debugging
 boolean removeUnusedLocalVars
          Removes unused variables in local scope.
 boolean removeUnusedPrototypeProperties
          Removes unused member prototypes
 boolean removeUnusedPrototypePropertiesInExterns
          Tells AnalyzePrototypeProperties it can remove externed props.
 boolean removeUnusedVars
          Removes unused variables
 String renamePrefix
          Specifies a prefix for all globals
 String renamePrefixNamespace
          Specifies the name of an object that will be used to store all non-extern globals.
 CheckLevel reportMissingOverride
           
 boolean reserveRawExports
          Reserve property names on the global this object.
 boolean rewriteFunctionExpressions
          Reduces the size of common function expressions.
 boolean smartNameRemoval
          Removes code associated with unused global names
 SourceMap.DetailLevel sourceMapDetailLevel
          The detail level for the generated source map.
 SourceMap.Format sourceMapFormat
          The source map file format
 List<SourceMap.LocationMapping> sourceMapLocationMappings
           
 String sourceMapOutputPath
          The output path for the source map.
 Set<String> stripNamePrefixes
          Name prefixes that determine which variables and properties to strip
 Set<String> stripNameSuffixes
          Name suffixes that determine which variables and properties to strip
 Set<String> stripTypePrefixes
          Qualified type name prefixes that determine which types to strip
 Set<String> stripTypes
          Names of types to strip
 String syntheticBlockEndMarker
           
 String syntheticBlockStartMarker
           
 VariableRenamingPolicy variableRenaming
          Controls which variables get renamed.
 
Constructor Summary
CompilerOptions()
          Initializes compiler options.
 
Method Summary
 void addWarningsGuard(WarningsGuard guard)
          Add a guard to the set of warnings guards.
 boolean assumeClosuresOnlyCaptureReferences()
           
 boolean assumeStrictThis()
           
 Object clone()
           
 void disableRuntimeTypeCheck()
           
 void enableExternExports(boolean enabled)
          Deprecated. replaced by setExternExports(boolean)
 void enableRuntimeTypeCheck(String logFunction)
          Enable runtime type checking, which adds JS type assertions for debugging.
 CompilerOptions.AliasTransformationHandler getAliasTransformationHandler()
           
 CodingConvention getCodingConvention()
           
 Map<String,Node> getDefineReplacements()
          Returns the map of define replacements.
 boolean getInferTypes()
          Gets the inferTypes flag.
 CompilerOptions.LanguageMode getLanguageIn()
           
 CompilerOptions.LanguageMode getLanguageOut()
           
 CompilerOptions.TracerMode getTracerMode()
           
 CompilerOptions.TweakProcessing getTweakProcessing()
           
 Map<String,Node> getTweakReplacements()
          Returns the map of tweak replacements.
 boolean isExternExportsEnabled()
           
 void resetWarningsGuard()
          Reset the warnings guard.
 void setAcceptConstKeyword(boolean value)
          If true, accept `const' keyword.
 void setAggressiveVarCheck(CheckLevel level)
          Checks for suspicious variable definitions and undefined variables
 void setAliasableGlobals(String names)
          A comma separated white-list of global names.
 void setAliasableStrings(Set<String> aliasableStrings)
           
 void setAliasAllStrings(boolean aliasAllStrings)
           
 void setAliasExternals(boolean aliasExternals)
           
 void setAliasKeywords(boolean aliasKeywords)
           
 void setAliasStringsBlacklist(String aliasStringsBlacklist)
           
 void setAliasTransformationHandler(CompilerOptions.AliasTransformationHandler changes)
           
 void setAmbiguateProperties(boolean ambiguateProperties)
           
 void setAnonymousFunctionNaming(AnonymousFunctionNamingPolicy anonymousFunctionNaming)
           
 void setAppNameStr(String appNameStr)
          App identifier string for use by the instrumentation template's app_name_setter.
 void setAssumeClosuresOnlyCaptureReferences(boolean enable)
          Whether to assume closures capture only what they reference.
 void setAssumeStrictThis(boolean enable)
          If true, enables enables additional optimizations.
 void setBrokenClosureRequiresLevel(CheckLevel level)
          Sets the check level for bad Closure require calls.
 void setChainCalls(boolean value)
          If true, chain calls to functions that return this.
 void setCheckCaja(boolean check)
           
 void setCheckControlStructures(boolean checkControlStructures)
           
 void setCheckGlobalNamesLevel(CheckLevel level)
          Checks the integrity of references to qualified global names.
 void setCheckGlobalThisLevel(CheckLevel level)
          Checks for certain uses of the this keyword that are considered unsafe because they are likely to reference the global this object unintentionally.
 void setCheckMissingGetCssNameBlacklist(String blackList)
           
 void setCheckMissingGetCssNameLevel(CheckLevel level)
          Checks that certain string literals only appear in strings used as goog.getCssName arguments.
 void setCheckMissingReturn(CheckLevel level)
          Checks for missing return statements
 void setCheckProvides(CheckLevel level)
          Checks for missing goog.provides() calls
 void setCheckRequires(CheckLevel level)
           
 void setCheckSuspiciousCode(boolean checkSuspiciousCode)
           
 void setCheckSymbols(boolean checkSymbols)
           
 void setCheckTypes(boolean checkTypes)
           
 void setCheckUnreachableCode(CheckLevel level)
          Checks for unreachable code
 void setClosurePass(boolean closurePass)
           
 void setCoalesceVariableNames(boolean coalesceVariableNames)
           
 void setCodingConvention(CodingConvention codingConvention)
           
 void setCollapseAnonymousFunctions(boolean enabled)
           
 void setCollapseObjectLiterals(boolean enabled)
           
 void setCollapseProperties(boolean collapseProperties)
           
 void setCollapsePropertiesOnExternTypes(boolean collapse)
          If true, flattens multi-level property names on extern types (e.g.
 void setCollapseVariableDeclarations(boolean enabled)
           
 void setColorizeErrorOutput(boolean colorizeErrorOutput)
           
 void setCommonJSModulePathPrefix(String commonJSModulePathPrefix)
          Sets a path prefix for Common JS modules.
 void setComputeFunctionSideEffects(boolean computeFunctionSideEffects)
           
 void setConvertToDottedProperties(boolean convertToDottedProperties)
           
 void setCrossModuleCodeMotion(boolean crossModuleCodeMotion)
           
 void setCrossModuleMethodMotion(boolean crossModuleMethodMotion)
           
 void setCssRenamingMap(CssRenamingMap cssRenamingMap)
           
 void setCustomPasses(com.google.common.collect.Multimap<CustomPassExecutionTime,CompilerPass> customPasses)
           
 void setDeadAssignmentElimination(boolean deadAssignmentElimination)
           
 void setDebugFunctionSideEffectsPath(String debugFunctionSideEffectsPath)
           
 void setDefineReplacements(Map<String,Object> defineReplacements)
           
 void setDefineToBooleanLiteral(String defineName, boolean value)
          Sets the value of the @define variable in JS to a boolean literal.
 void setDefineToDoubleLiteral(String defineName, double value)
          Sets the value of the @define variable in JS to a number literal.
 void setDefineToNumberLiteral(String defineName, int value)
          Sets the value of the @define variable in JS to a number literal.
 void setDefineToStringLiteral(String defineName, String value)
          Sets the value of the @define variable in JS to a String literal.
 void setDependencyOptions(DependencyOptions options)
          Sets dependency options.
 void setDevirtualizePrototypeMethods(boolean devirtualizePrototypeMethods)
           
 void setDevMode(com.google.javascript.jscomp.CompilerOptions.DevMode devMode)
           
 void setDisambiguateProperties(boolean disambiguateProperties)
           
 void setErrorFormat(ErrorFormat errorFormat)
           
 void setErrorHandler(ErrorHandler handler)
          Set a custom handler for warnings and errors.
 void setExportTestFunctions(boolean exportTestFunctions)
           
 void setExternExports(boolean externExports)
           
 void setExternExportsPath(String externExportsPath)
           
 void setExtraAnnotationNames(Set<String> extraAnnotationNames)
           
 void setExtractPrototypeMemberDeclarations(boolean enabled)
           
 void setFlowSensitiveInlineVariables(boolean enabled)
           
 void setFoldConstants(boolean foldConstants)
           
 void setGatherCssNames(boolean gatherCssNames)
           
 void setGenerateExports(boolean generateExports)
           
 void setGeneratePseudoNames(boolean generatePseudoNames)
           
 void setGroupVariableDeclarations(boolean enabled)
           
 void setIdeMode(boolean ideMode)
           
 void setIdGenerators(Set<String> idGenerators)
          Sets the id generators to replace.
 void setIgnoreCajaProperties(boolean enabled)
          Add code to skip properties that Caja adds to Object.prototype
 void setInferTypes(boolean enable)
          If true, enables type inference.
 void setInlineConstantVars(boolean inlineConstantVars)
           
 void setInlineFunctions(boolean inlineFunctions)
           
 void setInlineFunctions(CompilerOptions.Reach reach)
          Set the function inlining policy for the compiler.
 void setInlineGetters(boolean inlineGetters)
           
 void setInlineLocalFunctions(boolean inlineLocalFunctions)
           
 void setInlineLocalVariables(boolean inlineLocalVariables)
           
 void setInlineVariables(boolean inlineVariables)
           
 void setInlineVariables(CompilerOptions.Reach reach)
          Set the variable inlining policy for the compiler.
 void setInputDelimiter(String inputDelimiter)
           
 void setInputPropertyMapSerialized(byte[] inputPropertyMapSerialized)
           
 void setInputVariableMapSerialized(byte[] inputVariableMapSerialized)
           
 void setInstrumentationTemplate(String instrumentationTemplate)
           
 void setLabelRenaming(boolean labelRenaming)
           
 void setLanguageIn(CompilerOptions.LanguageMode languageIn)
          Sets how goog.tweak calls are processed.
 void setLanguageOut(CompilerOptions.LanguageMode languageOut)
           
 void setLineBreak(boolean lineBreak)
           
 void setLineLengthThreshold(int lineLengthThreshold)
           
 void setLocale(String locale)
           
 void setLooseTypes(boolean looseTypes)
          Whether to include "undefined" in the default types.
 void setManageClosureDependencies(boolean newVal)
          Sort inputs by their goog.provide/goog.require calls, and prune inputs whose symbols are not required.
 void setManageClosureDependencies(List<String> entryPoints)
          Sort inputs by their goog.provide/goog.require calls.
 void setMarkAsCompiled(boolean markAsCompiled)
           
 void setMarkNoSideEffectCalls(boolean markNoSideEffectCalls)
           
 void setMessageBundle(MessageBundle messageBundle)
           
 void setMoveFunctionDeclarations(boolean moveFunctionDeclarations)
           
 void setNameAnonymousFunctionsOnly(boolean value)
          If true, name anonymous functions only.
 void setNameReferenceGraphPath(String filePath)
          Where to save the name reference graph
 void setNameReferenceReportPath(String filePath)
          Where to save a cross-reference report from the name reference graph
 void setOptimizeArgumentsArray(boolean optimizeArgumentsArray)
           
 void setOptimizeCalls(boolean optimizeCalls)
           
 void setOptimizeParameters(boolean optimizeParameters)
           
 void setOptimizeReturns(boolean optimizeReturns)
           
 void setOutputCharset(String charsetName)
          Sets the output charset by name.
 void setOutputJsStringUsage(boolean outputJsStringUsage)
           
 void setPreferLineBreakAtEndOfFile(boolean lineBreakAtEnd)
           
 void setPrettyPrint(boolean prettyPrint)
           
 void setPrintInputDelimiter(boolean printInputDelimiter)
           
 void setProcessCommonJSModules(boolean processCommonJSModules)
          Rewrites CommonJS modulee so that modules can be concatenated together, by renaming all globals to avoid conflicting with other modules.
 void setProcessObjectPropertyString(boolean process)
          If true, process goog.testing.ObjectPropertyString instances.
 void setPropertyAffinity(boolean useAffinity)
           
 void setPropertyInvalidationErrors(Map<String,CheckLevel> propertyInvalidationErrors)
          Sets the list of properties that we report property invalidation errors for.
 void setPropertyRenaming(PropertyRenamingPolicy propertyRenaming)
           
 void setProtectHiddenSideEffects(boolean enable)
          When enabled, assume that apparently side-effect free code is meaningful.
 void setRecordFunctionInformation(boolean recordFunctionInformation)
           
 void setRemoveAbstractMethods(boolean remove)
           
 void setRemoveClosureAsserts(boolean remove)
           
 void setRemoveDeadCode(boolean removeDeadCode)
           
 void setRemoveTryCatchFinally(boolean removeTryCatchFinally)
           
 void setRemoveUnusedLocalVars(boolean removeUnusedLocalVars)
           
 void setRemoveUnusedPrototypeProperties(boolean enabled)
           
 void setRemoveUnusedPrototypePropertiesInExterns(boolean enabled)
           
 void setRemoveUnusedVariable(CompilerOptions.Reach reach)
          Deprecated. 
 void setRemoveUnusedVariables(CompilerOptions.Reach reach)
          Set the variable removal policy for the compiler.
 void setRemoveUnusedVars(boolean removeUnusedVars)
           
 void setRenamePrefix(String renamePrefix)
           
 void setRenamePrefixNamespace(String renamePrefixNamespace)
           
 void setRenamingPolicy(VariableRenamingPolicy newVariablePolicy, PropertyRenamingPolicy newPropertyPolicy)
          Sets the variable and property renaming policies for the compiler, in a way that clears warnings about the renaming policy being uninitialized from flags.
 void setReplaceIdGenerators(boolean replaceIdGenerators)
           
 void setReplaceStringsConfiguration(String placeholderToken, List<String> functionDescriptors)
          Sets the functions whose debug strings to replace.
 void setReplaceStringsFunctionDescriptions(List<String> replaceStringsFunctionDescriptions)
           
 void setReplaceStringsPlaceholderToken(String replaceStringsPlaceholderToken)
           
 void setReplaceStringsReservedStrings(Set<String> replaceStringsReservedStrings)
           
 void setReportMissingOverride(CheckLevel level)
          Flags a warning if a property is missing the @override annotation, but it overrides a base class property.
 void setReportPath(String reportPath)
          Where to save a report of global name usage
 void setReportUnknownTypes(CheckLevel level)
          Flags a warning for every node whose type could not be determined.
 void setReserveRawExports(boolean reserveRawExports)
           
 void setRewriteFunctionExpressions(boolean rewriteFunctionExpressions)
           
 void setRewriteNewDateGoogNow(boolean rewrite)
           
 void setRuntimeTypeCheck(boolean runtimeTypeCheck)
           
 void setRuntimeTypeCheckLogFunction(String runtimeTypeCheckLogFunction)
           
 void setShadowVariables(boolean shadow)
          Should shadow outer scope variable name during renaming.
 void setSkipAllPasses(boolean skipAllPasses)
           
 void setSmartNameRemoval(boolean smartNameRemoval)
           
 void setSourceMapDetailLevel(SourceMap.DetailLevel sourceMapDetailLevel)
           
 void setSourceMapFormat(SourceMap.Format sourceMapFormat)
           
 void setSourceMapLocationMappings(List<SourceMap.LocationMapping> sourceMapLocationMappings)
           
 void setSourceMapOutputPath(String sourceMapOutputPath)
           
 void setSpecializeInitialModule(boolean enabled)
          Specialize the initial module at the cost of later modules
 void setStripNamePrefixes(Set<String> stripNamePrefixes)
           
 void setStripNameSuffixes(Set<String> stripNameSuffixes)
           
 void setStripTypePrefixes(Set<String> stripTypePrefixes)
           
 void setStripTypes(Set<String> stripTypes)
           
 void setSummaryDetailLevel(int summaryDetailLevel)
          Controls how detailed the compilation summary is.
 void setSyntheticBlockEndMarker(String syntheticBlockEndMarker)
           
 void setSyntheticBlockStartMarker(String syntheticBlockStartMarker)
           
 void setTightenTypes(boolean tighten)
          Tightens types based on a global analysis.
 void setTracer(CompilerOptions.TracerMode tracer)
           
 void setTracerMode(CompilerOptions.TracerMode mode)
           
 void setTransformAMDToCJSModules(boolean transformAMDToCJSModules)
          Activates transformation of AMD to CJS modules.
 void setTweakProcessing(CompilerOptions.TweakProcessing tweakProcessing)
          Sets how goog.tweak calls are processed.
 void setTweakReplacements(Map<String,Object> tweakReplacements)
           
 void setTweakToBooleanLiteral(String tweakId, boolean value)
          Sets the value of the tweak in JS to a boolean literal.
 void setTweakToDoubleLiteral(String tweakId, double value)
          Sets the value of the tweak in JS to a number literal.
 void setTweakToNumberLiteral(String tweakId, int value)
          Sets the value of the tweak in JS to a number literal.
 void setTweakToStringLiteral(String tweakId, String value)
          Sets the value of the tweak in JS to a String literal.
 void setUnaliasableGlobals(String names)
          A comma separated white-list of global names.
 void setVariableRenaming(VariableRenamingPolicy variableRenaming)
           
 void setWarningLevel(DiagnosticGroup type, CheckLevel level)
          Configure the given type of warning to the given level.
 void setWarningsGuard(ComposeWarningsGuard warningsGuard)
           
 boolean shouldColorizeErrorOutput()
           
 void skipAllCompilerPasses()
          Skip all possible passes, to make the compiler as fast as possible.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ideMode

public boolean ideMode
Configures the compiler for use as an IDE backend. In this mode:


messageBundle

public transient MessageBundle messageBundle
Returns localized replacement for MSG_* variables


checkSymbols

public boolean checkSymbols
Checks that all symbols are defined


aggressiveVarCheck

public CheckLevel aggressiveVarCheck

checkSuspiciousCode

public boolean checkSuspiciousCode
Checks for suspicious statements that have no effect


checkControlStructures

public boolean checkControlStructures
Checks for invalid control structures


checkTypes

public boolean checkTypes
Checks types on expressions


reportMissingOverride

public CheckLevel reportMissingOverride

checkRequires

public CheckLevel checkRequires
Checks for missing goog.require() calls


checkProvides

public CheckLevel checkProvides

checkGlobalNamesLevel

public CheckLevel checkGlobalNamesLevel

brokenClosureRequiresLevel

public CheckLevel brokenClosureRequiresLevel

checkGlobalThisLevel

public CheckLevel checkGlobalThisLevel

checkMissingGetCssNameLevel

public CheckLevel checkMissingGetCssNameLevel

checkMissingGetCssNameBlacklist

public String checkMissingGetCssNameBlacklist
Regex of string literals that may only appear in goog.getCssName arguments.


foldConstants

public boolean foldConstants
Folds constants (e.g. (2 + 3) to 5)


deadAssignmentElimination

public boolean deadAssignmentElimination
Remove assignments to values that can not be referenced


inlineConstantVars

public boolean inlineConstantVars
Inlines constants (symbols that are all CAPS)


inlineFunctions

public boolean inlineFunctions
Inlines short functions


inlineLocalFunctions

public boolean inlineLocalFunctions
Enhanced function inlining


crossModuleCodeMotion

public boolean crossModuleCodeMotion
Move code to a deeper module


coalesceVariableNames

public boolean coalesceVariableNames
Merge two variables together as one.


crossModuleMethodMotion

public boolean crossModuleMethodMotion
Move methds to a deeper module


inlineGetters

public boolean inlineGetters
Inlines trivial getters


inlineVariables

public boolean inlineVariables
Inlines variables


flowSensitiveInlineVariables

public boolean flowSensitiveInlineVariables

smartNameRemoval

public boolean smartNameRemoval
Removes code associated with unused global names


removeDeadCode

public boolean removeDeadCode
Removes code that will never execute


checkUnreachableCode

public CheckLevel checkUnreachableCode

checkMissingReturn

public CheckLevel checkMissingReturn

extractPrototypeMemberDeclarations

public boolean extractPrototypeMemberDeclarations
Extracts common prototype member declarations


removeUnusedPrototypeProperties

public boolean removeUnusedPrototypeProperties
Removes unused member prototypes


removeUnusedPrototypePropertiesInExterns

public boolean removeUnusedPrototypePropertiesInExterns
Tells AnalyzePrototypeProperties it can remove externed props.


removeUnusedVars

public boolean removeUnusedVars
Removes unused variables


removeUnusedLocalVars

public boolean removeUnusedLocalVars
Removes unused variables in local scope.


aliasExternals

public boolean aliasExternals
Adds variable aliases for externals to reduce code size


collapseVariableDeclarations

public boolean collapseVariableDeclarations
Collapses multiple variable declarations into one


collapseAnonymousFunctions

public boolean collapseAnonymousFunctions
Collapses anonymous function declarations into named function declarations


aliasableStrings

public Set<String> aliasableStrings
If set to a non-empty set, those strings literals will be aliased to a single global instance per string, to avoid creating more objects than necessary.


aliasStringsBlacklist

public String aliasStringsBlacklist
A blacklist in the form of a regular expression to block strings that contains certain words from being aliased. If the value is the empty string, no words are blacklisted.


aliasAllStrings

public boolean aliasAllStrings
Aliases all string literals to global instances, to avoid creating more objects than necessary (if true, overrides any set of strings passed in to aliasableStrings)


convertToDottedProperties

public boolean convertToDottedProperties
Converts quoted property accesses to dot syntax (a['b'] -> a.b)


rewriteFunctionExpressions

public boolean rewriteFunctionExpressions
Reduces the size of common function expressions.


optimizeParameters

public boolean optimizeParameters
Remove unused and constant parameters.


optimizeReturns

public boolean optimizeReturns
Remove unused return values.


optimizeCalls

public boolean optimizeCalls
Remove unused parameters from call sites.


optimizeArgumentsArray

public boolean optimizeArgumentsArray
Provide formal names for elements of arguments array.


variableRenaming

public VariableRenamingPolicy variableRenaming
Controls which variables get renamed.


propertyRenaming

public PropertyRenamingPolicy propertyRenaming
Controls which properties get renamed.


labelRenaming

public boolean labelRenaming
Controls label renaming.


reserveRawExports

public boolean reserveRawExports
Reserve property names on the global this object.


generatePseudoNames

public boolean generatePseudoNames
Generate pseudo names for variables and properties for debugging purposes.


renamePrefix

public String renamePrefix
Specifies a prefix for all globals


renamePrefixNamespace

public String renamePrefixNamespace
Specifies the name of an object that will be used to store all non-extern globals.


aliasKeywords

public boolean aliasKeywords
Aliases true, false, and null to variables with shorter names.


collapseProperties

public boolean collapseProperties
Flattens multi-level property names (e.g. a$b = x)


devirtualizePrototypeMethods

public boolean devirtualizePrototypeMethods
Devirtualize prototype method by rewriting them to be static calls that take the this pointer as their first argument


computeFunctionSideEffects

public boolean computeFunctionSideEffects
Use @nosideeffects annotations, function bodies and name graph to determine if calls have side effects. Requires --check_types.


disambiguateProperties

public boolean disambiguateProperties
Rename properties to disambiguate between unrelated fields based on type information.


ambiguateProperties

public boolean ambiguateProperties
Rename unrelated properties to the same name to reduce code size.


anonymousFunctionNaming

public AnonymousFunctionNamingPolicy anonymousFunctionNaming
Give anonymous functions names for easier debugging


inputVariableMapSerialized

public byte[] inputVariableMapSerialized
Serialized input variable renaming map.


inputPropertyMapSerialized

public byte[] inputPropertyMapSerialized
Serialized input property renaming map.


exportTestFunctions

public boolean exportTestFunctions
Whether to export test functions.


syntheticBlockStartMarker

public String syntheticBlockStartMarker

syntheticBlockEndMarker

public String syntheticBlockEndMarker

locale

public String locale
Compiling locale


markAsCompiled

public boolean markAsCompiled
Sets the special "COMPILED" value to true


removeTryCatchFinally

public boolean removeTryCatchFinally
Removes try...catch...finally blocks for easier debugging


closurePass

public boolean closurePass
Processes goog.provide() and goog.require() calls


jqueryPass

public boolean jqueryPass
Processes jQuery aliases


gatherCssNames

public boolean gatherCssNames
Gather CSS names (requires closurePass)


stripTypes

public Set<String> stripTypes
Names of types to strip


stripNameSuffixes

public Set<String> stripNameSuffixes
Name suffixes that determine which variables and properties to strip


stripNamePrefixes

public Set<String> stripNamePrefixes
Name prefixes that determine which variables and properties to strip


stripTypePrefixes

public Set<String> stripTypePrefixes
Qualified type name prefixes that determine which types to strip


customPasses

public transient com.google.common.collect.Multimap<CustomPassExecutionTime,CompilerPass> customPasses
Custom passes


markNoSideEffectCalls

public boolean markNoSideEffectCalls
Mark no side effect calls


moveFunctionDeclarations

public boolean moveFunctionDeclarations
Move top level function declarations to the top


instrumentationTemplate

public String instrumentationTemplate
Instrumentation template to use with #recordFunctionInformation


recordFunctionInformation

public boolean recordFunctionInformation
Record function information


generateExports

public boolean generateExports

cssRenamingMap

public CssRenamingMap cssRenamingMap
Map used in the renaming of CSS class names.


prettyPrint

public boolean prettyPrint
Output in pretty indented format


lineBreak

public boolean lineBreak
Line break the output a bit more aggressively


preferLineBreakAtEndOfFile

public boolean preferLineBreakAtEndOfFile
Prefer line breaks at end of file


printInputDelimiter

public boolean printInputDelimiter
Prints a separator comment before each js script


inputDelimiter

public String inputDelimiter
The string to use as the separator for printInputDelimiter


errorFormat

public ErrorFormat errorFormat

sourceMapOutputPath

public String sourceMapOutputPath
The output path for the source map.


sourceMapDetailLevel

public SourceMap.DetailLevel sourceMapDetailLevel
The detail level for the generated source map.


sourceMapFormat

public SourceMap.Format sourceMapFormat
The source map file format


sourceMapLocationMappings

public List<SourceMap.LocationMapping> sourceMapLocationMappings
Constructor Detail

CompilerOptions

public CompilerOptions()
Initializes compiler options. All options are disabled by default. Command-line frontends to the compiler should set these properties like a builder.

Method Detail

setAggressiveVarCheck

public void setAggressiveVarCheck(CheckLevel level)
Checks for suspicious variable definitions and undefined variables


setTightenTypes

public void setTightenTypes(boolean tighten)
Tightens types based on a global analysis. Experimental.


setReportMissingOverride

public void setReportMissingOverride(CheckLevel level)
Flags a warning if a property is missing the @override annotation, but it overrides a base class property.


setReportUnknownTypes

public void setReportUnknownTypes(CheckLevel level)
Flags a warning for every node whose type could not be determined.


setCheckRequires

public void setCheckRequires(CheckLevel level)

setCheckProvides

public void setCheckProvides(CheckLevel level)
Checks for missing goog.provides() calls


setCheckGlobalNamesLevel

public void setCheckGlobalNamesLevel(CheckLevel level)
Checks the integrity of references to qualified global names. (e.g. "a.b")


setBrokenClosureRequiresLevel

public void setBrokenClosureRequiresLevel(CheckLevel level)
Sets the check level for bad Closure require calls.


setCheckGlobalThisLevel

public void setCheckGlobalThisLevel(CheckLevel level)
Checks for certain uses of the this keyword that are considered unsafe because they are likely to reference the global this object unintentionally. If this is off, but collapseProperties is on, then the compiler will usually ignore you and run this check anyways.


setCheckMissingGetCssNameLevel

public void setCheckMissingGetCssNameLevel(CheckLevel level)
Checks that certain string literals only appear in strings used as goog.getCssName arguments.


setCheckCaja

public void setCheckCaja(boolean check)

setCheckUnreachableCode

public void setCheckUnreachableCode(CheckLevel level)
Checks for unreachable code


setCheckMissingReturn

public void setCheckMissingReturn(CheckLevel level)
Checks for missing return statements


setAliasableGlobals

public void setAliasableGlobals(String names)
A comma separated white-list of global names. When aliasExternals is enable, if set to a non-empty string, only externals with these names will be considered for aliasing.


setUnaliasableGlobals

public void setUnaliasableGlobals(String names)
A comma separated white-list of global names. When aliasExternals is enable, these global names will not be aliased.


setCollapseObjectLiterals

public void setCollapseObjectLiterals(boolean enabled)

setSpecializeInitialModule

public void setSpecializeInitialModule(boolean enabled)
Specialize the initial module at the cost of later modules


setIgnoreCajaProperties

public void setIgnoreCajaProperties(boolean enabled)
Add code to skip properties that Caja adds to Object.prototype


setAppNameStr

public void setAppNameStr(String appNameStr)
App identifier string for use by the instrumentation template's app_name_setter. @see #instrumentationTemplate


setReportPath

public void setReportPath(String reportPath)
Where to save a report of global name usage


getTracerMode

public CompilerOptions.TracerMode getTracerMode()

setTracerMode

public void setTracerMode(CompilerOptions.TracerMode mode)

setNameReferenceReportPath

public void setNameReferenceReportPath(String filePath)
Where to save a cross-reference report from the name reference graph


setNameReferenceGraphPath

public void setNameReferenceGraphPath(String filePath)
Where to save the name reference graph


setProtectHiddenSideEffects

public void setProtectHiddenSideEffects(boolean enable)
When enabled, assume that apparently side-effect free code is meaningful.


getDefineReplacements

public Map<String,Node> getDefineReplacements()
Returns the map of define replacements.


getTweakReplacements

public Map<String,Node> getTweakReplacements()
Returns the map of tweak replacements.


setDefineToBooleanLiteral

public void setDefineToBooleanLiteral(String defineName,
                                      boolean value)
Sets the value of the @define variable in JS to a boolean literal.


setDefineToStringLiteral

public void setDefineToStringLiteral(String defineName,
                                     String value)
Sets the value of the @define variable in JS to a String literal.


setDefineToNumberLiteral

public void setDefineToNumberLiteral(String defineName,
                                     int value)
Sets the value of the @define variable in JS to a number literal.


setDefineToDoubleLiteral

public void setDefineToDoubleLiteral(String defineName,
                                     double value)
Sets the value of the @define variable in JS to a number literal.


setTweakToBooleanLiteral

public void setTweakToBooleanLiteral(String tweakId,
                                     boolean value)
Sets the value of the tweak in JS to a boolean literal.


setTweakToStringLiteral

public void setTweakToStringLiteral(String tweakId,
                                    String value)
Sets the value of the tweak in JS to a String literal.


setTweakToNumberLiteral

public void setTweakToNumberLiteral(String tweakId,
                                    int value)
Sets the value of the tweak in JS to a number literal.


setTweakToDoubleLiteral

public void setTweakToDoubleLiteral(String tweakId,
                                    double value)
Sets the value of the tweak in JS to a number literal.


skipAllCompilerPasses

public void skipAllCompilerPasses()
Skip all possible passes, to make the compiler as fast as possible.


setWarningLevel

public void setWarningLevel(DiagnosticGroup type,
                            CheckLevel level)
Configure the given type of warning to the given level.


resetWarningsGuard

public void resetWarningsGuard()
Reset the warnings guard.


addWarningsGuard

public void addWarningsGuard(WarningsGuard guard)
Add a guard to the set of warnings guards.


setRenamingPolicy

public void setRenamingPolicy(VariableRenamingPolicy newVariablePolicy,
                              PropertyRenamingPolicy newPropertyPolicy)
Sets the variable and property renaming policies for the compiler, in a way that clears warnings about the renaming policy being uninitialized from flags.


setPropertyAffinity

public void setPropertyAffinity(boolean useAffinity)

setShadowVariables

public void setShadowVariables(boolean shadow)
Should shadow outer scope variable name during renaming.


setCollapsePropertiesOnExternTypes

public void setCollapsePropertiesOnExternTypes(boolean collapse)
If true, flattens multi-level property names on extern types (e.g. String$f = x). This should only be used with the typed version of the externs files.


setProcessObjectPropertyString

public void setProcessObjectPropertyString(boolean process)
If true, process goog.testing.ObjectPropertyString instances.


setReplaceIdGenerators

public void setReplaceIdGenerators(boolean replaceIdGenerators)
Parameters:
replaceIdGenerators - the replaceIdGenerators to set

setIdGenerators

public void setIdGenerators(Set<String> idGenerators)
Sets the id generators to replace.


setInlineFunctions

public void setInlineFunctions(CompilerOptions.Reach reach)
Set the function inlining policy for the compiler.


setInlineVariables

public void setInlineVariables(CompilerOptions.Reach reach)
Set the variable inlining policy for the compiler.


setRemoveUnusedVariable

@Deprecated
public void setRemoveUnusedVariable(CompilerOptions.Reach reach)
Deprecated. 

Set the variable removal policy for the compiler.


setRemoveUnusedVariables

public void setRemoveUnusedVariables(CompilerOptions.Reach reach)
Set the variable removal policy for the compiler.


setReplaceStringsConfiguration

public void setReplaceStringsConfiguration(String placeholderToken,
                                           List<String> functionDescriptors)
Sets the functions whose debug strings to replace.


setRewriteNewDateGoogNow

public void setRewriteNewDateGoogNow(boolean rewrite)

setRemoveAbstractMethods

public void setRemoveAbstractMethods(boolean remove)

setRemoveClosureAsserts

public void setRemoveClosureAsserts(boolean remove)

setNameAnonymousFunctionsOnly

public void setNameAnonymousFunctionsOnly(boolean value)
If true, name anonymous functions only. All other passes will be skipped.


setColorizeErrorOutput

public void setColorizeErrorOutput(boolean colorizeErrorOutput)

shouldColorizeErrorOutput

public boolean shouldColorizeErrorOutput()

setChainCalls

public void setChainCalls(boolean value)
If true, chain calls to functions that return this.


setAcceptConstKeyword

public void setAcceptConstKeyword(boolean value)
If true, accept `const' keyword.


enableRuntimeTypeCheck

public void enableRuntimeTypeCheck(String logFunction)
Enable runtime type checking, which adds JS type assertions for debugging.

Parameters:
logFunction - A JS function to be used for logging runtime type assertion failures.

disableRuntimeTypeCheck

public void disableRuntimeTypeCheck()

setGenerateExports

public void setGenerateExports(boolean generateExports)

setCodingConvention

public void setCodingConvention(CodingConvention codingConvention)

getCodingConvention

public CodingConvention getCodingConvention()

setDependencyOptions

public void setDependencyOptions(DependencyOptions options)
Sets dependency options. See the DependencyOptions class for more info. This supercedes manageClosureDependencies.


setManageClosureDependencies

public void setManageClosureDependencies(boolean newVal)
Sort inputs by their goog.provide/goog.require calls, and prune inputs whose symbols are not required.


setManageClosureDependencies

public void setManageClosureDependencies(List<String> entryPoints)
Sort inputs by their goog.provide/goog.require calls.

Parameters:
entryPoints - Entry points to the program. Must be goog.provide'd symbols. Any goog.provide'd symbols that are not a transitive dependency of the entry points will be deleted. Files without goog.provides, and their dependencies, will always be left in.

setSummaryDetailLevel

public void setSummaryDetailLevel(int summaryDetailLevel)
Controls how detailed the compilation summary is. Values: 0 (never print summary), 1 (print summary only if there are errors or warnings), 2 (print summary if type checking is on, see --check_types), 3 (always print summary). The default level is 1


enableExternExports

@Deprecated
public void enableExternExports(boolean enabled)
Deprecated. replaced by setExternExports(boolean)


setExtraAnnotationNames

public void setExtraAnnotationNames(Set<String> extraAnnotationNames)

isExternExportsEnabled

public boolean isExternExportsEnabled()

setOutputCharset

public void setOutputCharset(String charsetName)
Sets the output charset by name.


setTweakProcessing

public void setTweakProcessing(CompilerOptions.TweakProcessing tweakProcessing)
Sets how goog.tweak calls are processed.


getTweakProcessing

public CompilerOptions.TweakProcessing getTweakProcessing()

setLanguageIn

public void setLanguageIn(CompilerOptions.LanguageMode languageIn)
Sets how goog.tweak calls are processed.


getLanguageIn

public CompilerOptions.LanguageMode getLanguageIn()

getLanguageOut

public CompilerOptions.LanguageMode getLanguageOut()

setLooseTypes

public void setLooseTypes(boolean looseTypes)
Whether to include "undefined" in the default types. For example: "{Object}" is normally "Object|null" becomes "Object|null|undefined" "{?string}" is normally "string|null" becomes "string|null|undefined" In either case "!" annotated types excluded both null and undefined.


clone

public Object clone()
             throws CloneNotSupportedException
Overrides:
clone in class Object
Throws:
CloneNotSupportedException

setAliasTransformationHandler

public void setAliasTransformationHandler(CompilerOptions.AliasTransformationHandler changes)

getAliasTransformationHandler

public CompilerOptions.AliasTransformationHandler getAliasTransformationHandler()

setErrorHandler

public void setErrorHandler(ErrorHandler handler)
Set a custom handler for warnings and errors. This is mostly used for piping the warnings and errors to a file behind the scenes. If you want to filter warnings and errors, you should use a WarningsGuard. If you want to change how warnings and errors are reported to the user, you should set a ErrorManager on the Compiler. An ErrorManager is intended to summarize the errors for a single compile job.


setInferTypes

public void setInferTypes(boolean enable)
If true, enables type inference. If checkTypes is enabled, this flag has no effect.


getInferTypes

public boolean getInferTypes()
Gets the inferTypes flag. Note that if checkTypes is enabled, this flag is ignored when configuring the compiler.


assumeStrictThis

public boolean assumeStrictThis()
Returns:
Whether assumeStrictThis is set.

setAssumeStrictThis

public void setAssumeStrictThis(boolean enable)
If true, enables enables additional optimizations.


assumeClosuresOnlyCaptureReferences

public boolean assumeClosuresOnlyCaptureReferences()
Returns:
Whether assumeClosuresOnlyCaptureReferences is set.

setAssumeClosuresOnlyCaptureReferences

public void setAssumeClosuresOnlyCaptureReferences(boolean enable)
Whether to assume closures capture only what they reference. This allows more aggressive function inlining.


setPropertyInvalidationErrors

public void setPropertyInvalidationErrors(Map<String,CheckLevel> propertyInvalidationErrors)
Sets the list of properties that we report property invalidation errors for.


setLanguageOut

public void setLanguageOut(CompilerOptions.LanguageMode languageOut)

setIdeMode

public void setIdeMode(boolean ideMode)

setSkipAllPasses

public void setSkipAllPasses(boolean skipAllPasses)

setDevMode

public void setDevMode(com.google.javascript.jscomp.CompilerOptions.DevMode devMode)

setMessageBundle

public void setMessageBundle(MessageBundle messageBundle)

setCheckSymbols

public void setCheckSymbols(boolean checkSymbols)

setCheckSuspiciousCode

public void setCheckSuspiciousCode(boolean checkSuspiciousCode)

setCheckControlStructures

public void setCheckControlStructures(boolean checkControlStructures)

setCheckTypes

public void setCheckTypes(boolean checkTypes)

setCheckMissingGetCssNameBlacklist

public void setCheckMissingGetCssNameBlacklist(String blackList)

setFoldConstants

public void setFoldConstants(boolean foldConstants)

setDeadAssignmentElimination

public void setDeadAssignmentElimination(boolean deadAssignmentElimination)

setInlineConstantVars

public void setInlineConstantVars(boolean inlineConstantVars)

setInlineFunctions

public void setInlineFunctions(boolean inlineFunctions)

setInlineLocalFunctions

public void setInlineLocalFunctions(boolean inlineLocalFunctions)

setCrossModuleCodeMotion

public void setCrossModuleCodeMotion(boolean crossModuleCodeMotion)

setCoalesceVariableNames

public void setCoalesceVariableNames(boolean coalesceVariableNames)

setCrossModuleMethodMotion

public void setCrossModuleMethodMotion(boolean crossModuleMethodMotion)

setInlineGetters

public void setInlineGetters(boolean inlineGetters)

setInlineVariables

public void setInlineVariables(boolean inlineVariables)

setInlineLocalVariables

public void setInlineLocalVariables(boolean inlineLocalVariables)

setFlowSensitiveInlineVariables

public void setFlowSensitiveInlineVariables(boolean enabled)

setSmartNameRemoval

public void setSmartNameRemoval(boolean smartNameRemoval)

setRemoveDeadCode

public void setRemoveDeadCode(boolean removeDeadCode)

setExtractPrototypeMemberDeclarations

public void setExtractPrototypeMemberDeclarations(boolean enabled)

setRemoveUnusedPrototypeProperties

public void setRemoveUnusedPrototypeProperties(boolean enabled)

setRemoveUnusedPrototypePropertiesInExterns

public void setRemoveUnusedPrototypePropertiesInExterns(boolean enabled)

setRemoveUnusedVars

public void setRemoveUnusedVars(boolean removeUnusedVars)

setRemoveUnusedLocalVars

public void setRemoveUnusedLocalVars(boolean removeUnusedLocalVars)

setAliasExternals

public void setAliasExternals(boolean aliasExternals)

setCollapseVariableDeclarations

public void setCollapseVariableDeclarations(boolean enabled)

setGroupVariableDeclarations

public void setGroupVariableDeclarations(boolean enabled)

setCollapseAnonymousFunctions

public void setCollapseAnonymousFunctions(boolean enabled)

setAliasableStrings

public void setAliasableStrings(Set<String> aliasableStrings)

setAliasStringsBlacklist

public void setAliasStringsBlacklist(String aliasStringsBlacklist)

setAliasAllStrings

public void setAliasAllStrings(boolean aliasAllStrings)

setOutputJsStringUsage

public void setOutputJsStringUsage(boolean outputJsStringUsage)

setConvertToDottedProperties

public void setConvertToDottedProperties(boolean convertToDottedProperties)

setRewriteFunctionExpressions

public void setRewriteFunctionExpressions(boolean rewriteFunctionExpressions)

setOptimizeParameters

public void setOptimizeParameters(boolean optimizeParameters)

setOptimizeReturns

public void setOptimizeReturns(boolean optimizeReturns)

setOptimizeCalls

public void setOptimizeCalls(boolean optimizeCalls)

setOptimizeArgumentsArray

public void setOptimizeArgumentsArray(boolean optimizeArgumentsArray)

setVariableRenaming

public void setVariableRenaming(VariableRenamingPolicy variableRenaming)

setPropertyRenaming

public void setPropertyRenaming(PropertyRenamingPolicy propertyRenaming)

setLabelRenaming

public void setLabelRenaming(boolean labelRenaming)

setReserveRawExports

public void setReserveRawExports(boolean reserveRawExports)

setGeneratePseudoNames

public void setGeneratePseudoNames(boolean generatePseudoNames)

setRenamePrefix

public void setRenamePrefix(String renamePrefix)

setRenamePrefixNamespace

public void setRenamePrefixNamespace(String renamePrefixNamespace)

setAliasKeywords

public void setAliasKeywords(boolean aliasKeywords)

setCollapseProperties

public void setCollapseProperties(boolean collapseProperties)

setDevirtualizePrototypeMethods

public void setDevirtualizePrototypeMethods(boolean devirtualizePrototypeMethods)

setComputeFunctionSideEffects

public void setComputeFunctionSideEffects(boolean computeFunctionSideEffects)

setDebugFunctionSideEffectsPath

public void setDebugFunctionSideEffectsPath(String debugFunctionSideEffectsPath)

setDisambiguateProperties

public void setDisambiguateProperties(boolean disambiguateProperties)

setAmbiguateProperties

public void setAmbiguateProperties(boolean ambiguateProperties)

setAnonymousFunctionNaming

public void setAnonymousFunctionNaming(AnonymousFunctionNamingPolicy anonymousFunctionNaming)

setInputVariableMapSerialized

public void setInputVariableMapSerialized(byte[] inputVariableMapSerialized)

setInputPropertyMapSerialized

public void setInputPropertyMapSerialized(byte[] inputPropertyMapSerialized)

setExportTestFunctions

public void setExportTestFunctions(boolean exportTestFunctions)

setRuntimeTypeCheck

public void setRuntimeTypeCheck(boolean runtimeTypeCheck)

setRuntimeTypeCheckLogFunction

public void setRuntimeTypeCheckLogFunction(String runtimeTypeCheckLogFunction)

setSyntheticBlockStartMarker

public void setSyntheticBlockStartMarker(String syntheticBlockStartMarker)

setSyntheticBlockEndMarker

public void setSyntheticBlockEndMarker(String syntheticBlockEndMarker)

setLocale

public void setLocale(String locale)

setMarkAsCompiled

public void setMarkAsCompiled(boolean markAsCompiled)

setRemoveTryCatchFinally

public void setRemoveTryCatchFinally(boolean removeTryCatchFinally)

setClosurePass

public void setClosurePass(boolean closurePass)

setGatherCssNames

public void setGatherCssNames(boolean gatherCssNames)

setStripTypes

public void setStripTypes(Set<String> stripTypes)

setStripNameSuffixes

public void setStripNameSuffixes(Set<String> stripNameSuffixes)

setStripNamePrefixes

public void setStripNamePrefixes(Set<String> stripNamePrefixes)

setStripTypePrefixes

public void setStripTypePrefixes(Set<String> stripTypePrefixes)

setCustomPasses

public void setCustomPasses(com.google.common.collect.Multimap<CustomPassExecutionTime,CompilerPass> customPasses)

setMarkNoSideEffectCalls

public void setMarkNoSideEffectCalls(boolean markNoSideEffectCalls)

setDefineReplacements

public void setDefineReplacements(Map<String,Object> defineReplacements)

setTweakReplacements

public void setTweakReplacements(Map<String,Object> tweakReplacements)

setMoveFunctionDeclarations

public void setMoveFunctionDeclarations(boolean moveFunctionDeclarations)

setInstrumentationTemplate

public void setInstrumentationTemplate(String instrumentationTemplate)

setRecordFunctionInformation

public void setRecordFunctionInformation(boolean recordFunctionInformation)

setCssRenamingMap

public void setCssRenamingMap(CssRenamingMap cssRenamingMap)

setReplaceStringsFunctionDescriptions

public void setReplaceStringsFunctionDescriptions(List<String> replaceStringsFunctionDescriptions)

setReplaceStringsPlaceholderToken

public void setReplaceStringsPlaceholderToken(String replaceStringsPlaceholderToken)

setReplaceStringsReservedStrings

public void setReplaceStringsReservedStrings(Set<String> replaceStringsReservedStrings)

setPrettyPrint

public void setPrettyPrint(boolean prettyPrint)

setLineBreak

public void setLineBreak(boolean lineBreak)

setPreferLineBreakAtEndOfFile

public void setPreferLineBreakAtEndOfFile(boolean lineBreakAtEnd)

setPrintInputDelimiter

public void setPrintInputDelimiter(boolean printInputDelimiter)

setInputDelimiter

public void setInputDelimiter(String inputDelimiter)

setTracer

public void setTracer(CompilerOptions.TracerMode tracer)

setErrorFormat

public void setErrorFormat(ErrorFormat errorFormat)

setWarningsGuard

public void setWarningsGuard(ComposeWarningsGuard warningsGuard)

setLineLengthThreshold

public void setLineLengthThreshold(int lineLengthThreshold)

setExternExports

public void setExternExports(boolean externExports)

setExternExportsPath

public void setExternExportsPath(String externExportsPath)

setSourceMapOutputPath

public void setSourceMapOutputPath(String sourceMapOutputPath)

setSourceMapDetailLevel

public void setSourceMapDetailLevel(SourceMap.DetailLevel sourceMapDetailLevel)

setSourceMapFormat

public void setSourceMapFormat(SourceMap.Format sourceMapFormat)

setSourceMapLocationMappings

public void setSourceMapLocationMappings(List<SourceMap.LocationMapping> sourceMapLocationMappings)

setTransformAMDToCJSModules

public void setTransformAMDToCJSModules(boolean transformAMDToCJSModules)
Activates transformation of AMD to CJS modules.


setProcessCommonJSModules

public void setProcessCommonJSModules(boolean processCommonJSModules)
Rewrites CommonJS modulee so that modules can be concatenated together, by renaming all globals to avoid conflicting with other modules.


setCommonJSModulePathPrefix

public void setCommonJSModulePathPrefix(String commonJSModulePathPrefix)
Sets a path prefix for Common JS modules.