Class CompilerOptions

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

public class CompilerOptions extends Object implements Serializable, Cloneable
Compiler options
See Also:
  • Field Details

    • ideMode

      public boolean ideMode
      Configures the compiler for use as an IDE backend. In this mode:
      • No optimization passes will run.
      • The last time custom passes are invoked is CustomPassExecutionTime.BEFORE_OPTIMIZATIONS
      • The compiler will always try to process all inputs fully, even if it encounters errors.
      • The compiler may record more information than is strictly needed for codegen.
    • 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 global functions
    • inlineLocalFunctions

      public boolean inlineLocalFunctions
      Inlines functions defined in local scopes
    • 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 methods 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.
    • removeUnusedClassProperties

      public boolean removeUnusedClassProperties
      Removes unused member properties
    • 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
    • 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 Details

    • 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 Details

    • 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
    • setReplaceMessagesWithChromeI18n

      public void setReplaceMessagesWithChromeI18n(boolean replaceMessagesWithChromeI18n, String tcProjectId)
    • 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
    • setPreferSingleQuotes

      public void setPreferSingleQuotes(boolean enabled)
      Normally, when there are an equal number of single and double quotes in a string, the compiler will use double quotes. Set this to true to prefer single quotes.
    • setTrustedStrings

      public void setTrustedStrings(boolean yes)
      Some people want to put arbitrary user input into strings, which are then run through the compiler. These scripts are then put into HTML. By default, we assume strings are untrusted. If the compiler is run from the command-line, we assume that strings are trusted.
    • 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.
    • isRemoveUnusedClassProperties

      public boolean isRemoveUnusedClassProperties()
      Returns:
      Whether to attempt to remove unused class properties
    • setRemoveUnusedClassProperties

      public void setRemoveUnusedClassProperties(boolean removeUnusedClassProperties)
      Parameters:
      removeUnusedClassProperties - Whether to attempt to remove unused class properties
    • 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.
    • setIdGeneratorsMap

      public void setIdGeneratorsMap(String previousMappings)
      A previous map of ids (serialized to a string by a previous compile). This will be used as a hint during the ReplaceIdGenerators pass, which will attempt to reuse the same ids.
    • 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.
    • setInlineProperties

      public void setInlineProperties(boolean enable)
      Set the function 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

      @Deprecated public void setRewriteNewDateGoogNow(boolean rewrite)
      Deprecated.
    • 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 run-time type checking, which adds JS type assertions for debugging.
      Parameters:
      logFunction - A JS function to be used for logging run-time type assertion failures.
    • disableRuntimeTypeCheck

      public void disableRuntimeTypeCheck()
    • setGenerateExports

      public void setGenerateExports(boolean generateExports)
    • setAngularPass

      public void setAngularPass(boolean angularPass)
    • 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 supersedes 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.
    • setExtraAnnotationNames

      public void setExtraAnnotationNames(Iterable<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)
    • setSaveDataStructures

      public void setSaveDataStructures(boolean save)
      Whether to keep internal data structures around after we're finished compiling. We do this by default when IDE mode is on.
    • setSkipAllPasses

      public void setSkipAllPasses(boolean skipAllPasses)
    • setDevMode

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

      public void setCheckDeterminism(boolean checkDeterminism)
    • getCheckDeterminism

      public boolean getCheckDeterminism()
    • 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)
    • setInputAnonymousFunctionNamingMap

      public void setInputAnonymousFunctionNamingMap(VariableMap inputMap)
    • setInputVariableMapSerialized

      @Deprecated public void setInputVariableMapSerialized(byte[] inputVariableMapSerialized) throws ParseException
      Deprecated.
      Throws:
      ParseException
    • setInputVariableMap

      public void setInputVariableMap(VariableMap inputVariableMap)
    • setInputPropertyMapSerialized

      @Deprecated public void setInputPropertyMapSerialized(byte[] inputPropertyMapSerialized) throws ParseException
      Deprecated.
      Throws:
      ParseException
    • setInputPropertyMap

      public void setInputPropertyMap(VariableMap inputPropertyMap)
    • 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)
    • setCssRenamingWhitelist

      public void setCssRenamingWhitelist(Set<String> whitelist)
    • setReplaceStringsFunctionDescriptions

      public void setReplaceStringsFunctionDescriptions(List<String> replaceStringsFunctionDescriptions)
    • setReplaceStringsPlaceholderToken

      public void setReplaceStringsPlaceholderToken(String replaceStringsPlaceholderToken)
    • setReplaceStringsReservedStrings

      public void setReplaceStringsReservedStrings(Set<String> replaceStringsReservedStrings)
    • setReplaceStringsInputMap

      public void setReplaceStringsInputMap(VariableMap serializedMap)
    • 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 CommonJS modules.
    • setProcessCommonJSModules

      public void setProcessCommonJSModules(boolean processCommonJSModules)
      Rewrites CommonJS modules 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 CommonJS modules.