Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–581 unchanged (581 lines)
582 SourceMap.DetailLevel.SYMBOLS;
583
584 /**
585 * Charset to use when generating code. If null, then output ASCII.
586 * This needs to be a string because CompilerOptions is serializable.
587 */
588 public Charset outputCharset;
589
590 /**
591 * Whether the named objects types included 'undefined' by default.
592 */
593 boolean looseTypes;
594
…lines 595–953 unchanged (359 lines)
954 return externExports;
955 }
956
957 /**
958 * Sets the output charset by name.
959 */
960
961 /**
962 * Whether to include "undefined" in the default types.
963 * For example:
964 * "{Object}" is normally "Object|null" becomes "Object|null|undefined"
965 * "{?string}" is normally "string|null" becomes "string|null|undefined"
966 * In either case "!" annotated types excluded both null and undefined.
…lines 967–1015 unchanged (49 lines)

After

…lines 1–581 unchanged (581 lines)
582 SourceMap.DetailLevel.SYMBOLS;
583
584 /**
585 * Charset to use when generating code. If null, then output ASCII.
586 * This needs to be a string because CompilerOptions is serializable.
587 */
588 String outputCharset;
589
590 /**
591 * Whether the named objects types included 'undefined' by default.
592 */
593 boolean looseTypes;
594
…lines 595–953 unchanged (359 lines)
954 return externExports;
955 }
956
957 /**
958 * Sets the output charset by name.
959 */
960 public void setOutputCharset(String charsetName) {
961 this.outputCharset = charsetName;
962 }
963
964 /**
965 * Whether to include "undefined" in the default types.
966 * For example:
967 * "{Object}" is normally "Object|null" becomes "Object|null|undefined"
968 * "{?string}" is normally "string|null" becomes "string|null|undefined"
…lines 969–1018 unchanged (50 lines)

Before

program
block_comment "/*\n * Copyright 2009 Google Inc.\n *\n * Licensed under the Ap"...
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "javascript"
. "."
identifier "jscomp"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "base"
. "."
identifier "Preconditions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Lists"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Maps"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Multimap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Sets"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "javascript"
. "."
identifier "rhino"
. "."
identifier "Node"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "javascript"
. "."
identifier "rhino"
. "."
identifier "Token"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "io"
. "."
identifier "Serializable"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "nio"
. "."
identifier "charset"
. "."
identifier "Charset"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Collections"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "List"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Map"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Set"
; ";"
block_comment "/**\n * Compiler options\n * @author nicksantos@google.com (Ni"...
class_declaration
modifiers
public "public"
class "class"
identifier "CompilerOptions"
super_interfaces
implements "implements"
type_list
type_identifier "Serializable"
, ","
type_identifier "Cloneable"
class_body
{ "{"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
decimal_integer_literal "7L"
; ";"
block_comment "/**\n * Configures the compiler for use as an IDE backend. "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "ideMode"
; ";"
block_comment "/**\n * Configures the compiler to skip as many passes as p"...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "skipAllPasses"
; ";"
block_comment "/**\n * If true, name anonymous functions only. All others "...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "nameAnonymousFunctionsOnly"
; ";"
block_comment "/**\n * Configures the compiler to run expensive sanity che"...
field_declaration
type_identifier "DevMode"
variable_declarator
identifier "devMode"
; ";"
line_comment "//--------------------------------"
line_comment "// Input Options"
line_comment "//--------------------------------"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "manageClosureDependencies"
= "="
false "false"
; ";"
block_comment "/** Returns localized replacement for MSG_* variables */"
line_comment "// Transient so that clients don't have to implement Seriali"...
field_declaration
modifiers
public "public"
transient "transient"
type_identifier "MessageBundle"
variable_declarator
identifier "messageBundle"
= "="
null_literal "null"
; ";"
line_comment "//--------------------------------"
line_comment "// Checks"
line_comment "//--------------------------------"
block_comment "/** Checks that all symbols are defined */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkSymbols"
; ";"
block_comment "/**\n * Checks that all variables with the @noshadow attrib"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkShadowVars"
; ";"
block_comment "/** Checks for suspicious variable definitions and undefined"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "aggressiveVarCheck"
; ";"
block_comment "/** Checks function arity */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkFunctions"
; ";"
block_comment "/** Checks method arity */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkMethods"
; ";"
block_comment "/** Makes sure no duplicate messages */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkDuplicateMessages"
; ";"
block_comment "/** Allows old deprecated js message style */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "allowLegacyJsMessages"
; ";"
block_comment "/**\n * Whether we should throw an exception in case if the"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "strictMessageReplacement"
; ";"
block_comment "/** Checks for suspicious statements that have no effect */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkSuspiciousCode"
; ";"
block_comment "/** Checks for invalid control structures */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkControlStructures"
; ";"
block_comment "/** Checks for non-extern properties that are read but never"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkUndefinedProperties"
; ";"
block_comment "/**\n * Checks for non-extern properties that are written b"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkUnusedPropertiesEarly"
; ";"
block_comment "/** Checks types on expressions */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkTypes"
; ";"
block_comment "/** Tightens types based on a global analysis. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "tightenTypes"
; ";"
line_comment "// TODO(user): A temporary flag to prevent the type inferenc"...
line_comment "// running in the global scope because it takes too long to "...
block_comment "/** Runs a flow sensitive type inference in the global scope"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inferTypesInGlobalScope"
; ";"
block_comment "/** Checks for inexistant property calls */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkTypedPropertyCalls"
; ";"
block_comment "/**\n * Flags a warning if a property is missing the @overr"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "reportMissingOverride"
; ";"
block_comment "/** Flags a warning for every node whose type could not be d"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "reportUnknownTypes"
; ";"
block_comment "/** Checks for missing goog.require() calls **/"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkRequires"
; ";"
block_comment "/** Checks for missing goog.provides() calls **/"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkProvides"
; ";"
block_comment "/**\n * Checks the integrity of references to qualified glo"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkGlobalNamesLevel"
; ";"
block_comment "/** Sets the check level for bad Closure require calls. */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "brokenClosureRequiresLevel"
; ";"
block_comment "/**\n * Checks for certain uses of the {@code this} keyword"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkGlobalThisLevel"
; ";"
block_comment "/**\n * Checks that certain string literals only appear in "...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkMissingGetCssNameLevel"
; ";"
block_comment "/**\n * Regex of string literals that may only appear in go"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "checkMissingGetCssNameBlacklist"
; ";"
block_comment "/** Checks that the synctactic restrictions of ES5 strict mo"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkEs5Strict"
; ";"
block_comment "/** Checks that the synctactic restrictions of Caja are met."...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkCaja"
; ";"
line_comment "//--------------------------------"
line_comment "// Optimizations"
line_comment "//--------------------------------"
block_comment "/** Folds constants (e.g. (2 + 3) to 5) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "foldConstants"
; ";"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeConstantExpressions"
; ";"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "deadAssignmentElimination"
; ";"
block_comment "/** Inlines constants (symbols that are all CAPS) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineConstantVars"
; ";"
block_comment "/** Inlines short functions */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineFunctions"
; ";"
block_comment "/** Enhanced function inlining */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "decomposeExpressions"
; ";"
block_comment "/** Enhanced function inlining */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineAnonymousFunctionExpressions"
; ";"
block_comment "/** Enhanced function inlining */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineLocalFunctions"
; ";"
block_comment "/** Move code to a deeper module */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "crossModuleCodeMotion"
; ";"
block_comment "/** Merge two variables together as one. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "coalesceVariableNames"
; ";"
block_comment "/** Move methds to a deeper module */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "crossModuleMethodMotion"
; ";"
block_comment "/** Inlines trivial getters */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineGetters"
; ";"
block_comment "/** Inlines variables */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineVariables"
; ";"
block_comment "/** Inlines variables */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineLocalVariables"
; ";"
line_comment "// TODO(user): This is temporary. Once flow sensitive inlini"...
line_comment "// Remove this."
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "flowSensitiveInlineVariables"
; ";"
block_comment "/** Removes code associated with unused global names */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "smartNameRemoval"
; ";"
block_comment "/** Removes code that will never execute */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeDeadCode"
; ";"
block_comment "/** Checks for unreachable code */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkUnreachableCode"
; ";"
block_comment "/** Checks for missing return statements */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkMissingReturn"
; ";"
block_comment "/** Extracts common prototype member declarations */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "extractPrototypeMemberDeclarations"
; ";"
block_comment "/** Removes functions that have no body */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeEmptyFunctions"
; ";"
block_comment "/** Removes unused member prototypes */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedPrototypeProperties"
; ";"
block_comment "/** Tells AnalyzePrototypeProperties it can remove externed "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedPrototypePropertiesInExterns"
; ";"
block_comment "/** Removes unused variables */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedVars"
; ";"
block_comment "/** Removes unused variables in global scope. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedVarsInGlobalScope"
; ";"
block_comment "/** Adds variable aliases for externals to reduce code size "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "aliasExternals"
; ";"
block_comment "/**\n * If set to a non-empty string, then during an alias "...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "aliasableGlobals"
; ";"
block_comment "/**\n * Additional globals that can not be aliased since th"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "unaliasableGlobals"
; ";"
block_comment "/** Collapses multiple variable declarations into one */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "collapseVariableDeclarations"
; ";"
block_comment "/** Group multiple variable declarations into one */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "groupVariableDeclarations"
; ";"
block_comment "/**\n * Collapses anonymous function declarations into name"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "collapseAnonymousFunctions"
; ";"
block_comment "/**\n * If set to a non-empty set, those strings literals w"...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "aliasableStrings"
; ";"
block_comment "/**\n * A blacklist in the form of a regular expression to "...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "aliasStringsBlacklist"
; ";"
block_comment "/**\n * Aliases all string literals to global instances, to"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "aliasAllStrings"
; ";"
block_comment "/** Print string usage as part of the compilation log. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "outputJsStringUsage"
; ";"
block_comment "/** Converts quoted property accesses to dot syntax (a['b'] "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "convertToDottedProperties"
; ";"
block_comment "/** Reduces the size of common function expressions. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "rewriteFunctionExpressions"
; ";"
block_comment "/**\n * Remove unused and constant parameters.\n */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "optimizeParameters"
; ";"
block_comment "/**\n * Provide formal names for elements of arguments arra"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "optimizeArgumentsArray"
; ";"
block_comment "/** Chains calls to functions that return this. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "chainCalls"
; ";"
line_comment "//--------------------------------"
line_comment "// Renaming"
line_comment "//--------------------------------"
block_comment "/** Controls which variables get renamed. */"
field_declaration
modifiers
public "public"
type_identifier "VariableRenamingPolicy"
variable_declarator
identifier "variableRenaming"
; ";"
block_comment "/** Controls which properties get renamed. */"
field_declaration
modifiers
public "public"
type_identifier "PropertyRenamingPolicy"
variable_declarator
identifier "propertyRenaming"
; ";"
block_comment "/** Controls label renaming. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "labelRenaming"
; ";"
block_comment "/** Reserve property names on the global this object. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "reserveRawExports"
; ";"
block_comment "/**\n * Generate pseudo names for variables and properties "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "generatePseudoNames"
; ";"
block_comment "/** Specifies a prefix for all globals */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "renamePrefix"
; ";"
block_comment "/** Aliases true, false, and null to variables with shorter "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "aliasKeywords"
; ";"
block_comment "/** Flattens multi-level property names (e.g. a$b = x) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "collapseProperties"
; ";"
block_comment "/** Flattens multi-level property names on extern types (e.g"...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "collapsePropertiesOnExternTypes"
; ";"
block_comment "/**\n * Devirtualize prototype method by rewriting them to "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "devirtualizePrototypeMethods"
; ";"
block_comment "/**\n * Use @nosideeffects annotations, function bodies and"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "computeFunctionSideEffects"
; ";"
block_comment "/**\n * Where to save debug report for compute function sid"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "debugFunctionSideEffectsPath"
; ";"
block_comment "/**\n * Rename properties to disambiguate between unrelated"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "disambiguateProperties"
; ";"
block_comment "/** Rename unrelated properties to the same name to reduce c"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "ambiguateProperties"
; ";"
block_comment "/** Give anonymous functions names for easier debugging */"
field_declaration
modifiers
public "public"
type_identifier "AnonymousFunctionNamingPolicy"
variable_declarator
identifier "anonymousFunctionNaming"
; ";"
block_comment "/** Serialized input variable renaming map. */"
field_declaration
modifiers
public "public"
array_type
integral_type
byte "byte"
dimensions
[ "["
] "]"
variable_declarator
identifier "inputVariableMapSerialized"
; ";"
block_comment "/** Serialized input property renaming map. */"
field_declaration
modifiers
public "public"
array_type
integral_type
byte "byte"
dimensions
[ "["
] "]"
variable_declarator
identifier "inputPropertyMapSerialized"
; ";"
block_comment "/** Whether to export test functions. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "exportTestFunctions"
; ";"
line_comment "//--------------------------------"
line_comment "// Special-purpose alterations"
line_comment "//--------------------------------"
block_comment "/** Inserts runtime type assertions for debugging. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "runtimeTypeCheck"
; ";"
block_comment "/**\n * A JS function to be used for logging runtime type a"...
field_declaration
type_identifier "String"
variable_declarator
identifier "runtimeTypeCheckLogFunction"
; ";"
block_comment "/** A CodingConvention to use during the compile. */"
field_declaration
modifiers
private "private"
type_identifier "CodingConvention"
variable_declarator
identifier "codingConvention"
; ";"
block_comment "/** Instrument code for the purpose of collecting coverage d"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "instrumentForCoverage"
; ";"
block_comment "/**\n * Instrument code for the purpose of collecting cover"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "instrumentForCoverageOnly"
; ";"
block_comment "/** Add code to skip properties that Caja adds to Object.pro"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "ignoreCajaProperties"
; ";"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "syntheticBlockStartMarker"
; ";"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "syntheticBlockEndMarker"
; ";"
block_comment "/** Compiling locale */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "locale"
; ";"
block_comment "/** Sets the special \"COMPILED\" value to true */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "markAsCompiled"
; ";"
block_comment "/** Removes try...catch...finally blocks for easier debuggin"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeTryCatchFinally"
; ";"
block_comment "/** Processes goog.provide() and goog.require() calls */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "closurePass"
; ";"
block_comment "/** Rewrite new Date(goog.now()) to new Date(). */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "rewriteNewDateGoogNow"
; ";"
block_comment "/** Remove goog.abstractMethod assignments. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "removeAbstractMethods"
; ";"
block_comment "/** Gather CSS names (requires closurePass) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "gatherCssNames"
; ";"
block_comment "/** Names of types to strip */"
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripTypes"
; ";"
block_comment "/** Name suffixes that determine which variables and propert"...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripNameSuffixes"
; ";"
block_comment "/** Name prefixes that determine which variables and propert"...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripNamePrefixes"
; ";"
block_comment "/** Qualified type name prefixes that determine which types "...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripTypePrefixes"
; ";"
block_comment "/** Custom passes */"
field_declaration
modifiers
public "public"
transient "transient"
generic_type
type_identifier "Multimap"
type_arguments
< "<"
type_identifier "CustomPassExecutionTime"
, ","
type_identifier "CompilerPass"
> ">"
variable_declarator
identifier "customPasses"
; ";"
block_comment "/** Mark no side effect calls */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "markNoSideEffectCalls"
; ";"
block_comment "/** Replacements for @defines. Will be Boolean, Numbers, or "...
field_declaration
modifiers
private "private"
generic_type
type_identifier "Map"
type_arguments
< "<"
type_identifier "String"
, ","
type_identifier "Object"
> ">"
variable_declarator
identifier "defineReplacements"
; ";"
block_comment "/** Move top level function declarations to the top */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "moveFunctionDeclarations"
; ";"
block_comment "/** Instrumentation template to use */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "instrumentationTemplate"
; ";"
block_comment "/**\n * App identifier string for use by the instrumentatio"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "appNameStr"
; ";"
block_comment "/** Record function information */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "recordFunctionInformation"
; ";"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "generateExports"
; ";"
block_comment "/** Map used in the renaming of CSS class names. */"
field_declaration
modifiers
public "public"
type_identifier "CssRenamingMap"
variable_declarator
identifier "cssRenamingMap"
; ";"
block_comment "/** Process instances of goog.testing.ObjectPropertyString. "...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "processObjectPropertyString"
; ";"
block_comment "/** Id generators to replace. */"
field_declaration
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "idGenerators"
; ";"
block_comment "/** Configuration strings */"
field_declaration
generic_type
type_identifier "List"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "replaceStringsFunctionDescriptions"
; ";"
field_declaration
type_identifier "String"
variable_declarator
identifier "replaceStringsPlaceholderToken"
; ";"
line_comment "//--------------------------------"
line_comment "// Output options"
line_comment "//--------------------------------"
block_comment "/** Output in pretty indented format */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "prettyPrint"
; ";"
block_comment "/** Line break the output a bit more aggressively */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "lineBreak"
; ";"
block_comment "/** Prints a separator comment before each js script */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "printInputDelimiter"
; ";"
block_comment "/** The string to use as the separator for printInputDelimit"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "inputDelimiter"
= "="
string_literal
" "\""
string_fragment "// Input %num%"
" "\""
; ";"
block_comment "/** Where to save a report of global name usage */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "reportPath"
; ";"
field_declaration
modifiers
public "public"
type_identifier "TracerMode"
variable_declarator
identifier "tracer"
; ";"
field_declaration
modifiers
private "private"
boolean_type "boolean"
variable_declarator
identifier "colorizeErrorOutput"
; ";"
field_declaration
modifiers
public "public"
type_identifier "ErrorFormat"
variable_declarator
identifier "errorFormat"
; ";"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "jsOutputFile"
; ";"
field_declaration
modifiers
private "private"
transient "transient"
type_identifier "ComposeWarningsGuard"
variable_declarator
identifier "warningsGuard"
; ";"
field_declaration
integral_type
int "int"
variable_declarator
identifier "summaryDetailLevel"
= "="
decimal_integer_literal "1"
; ";"
line_comment "//--------------------------------"
line_comment "// Special Output Options"
line_comment "//--------------------------------"
block_comment "/**\n * Whether the exports should be made available via {@"...
field_declaration
modifiers
private "private"
boolean_type "boolean"
variable_declarator
identifier "externExports"
; ";"
block_comment "/** The output path for the created externs file. */"
field_declaration
type_identifier "String"
variable_declarator
identifier "externExportsPath"
; ";"
block_comment "/** Where to save a cross-reference report from the name ref"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "nameReferenceReportPath"
; ";"
block_comment "/** Where to save the name reference graph */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "nameReferenceGraphPath"
; ";"
line_comment "//--------------------------------"
line_comment "// Debugging Options"
line_comment "//--------------------------------"
block_comment "/** The output path for the source map. */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "sourceMapOutputPath"
; ";"
block_comment "/** The detail level for the generated source map. */"
field_declaration
modifiers
public "public"
scoped_type_identifier
type_identifier "SourceMap"
. "."
type_identifier "DetailLevel"
variable_declarator
identifier "sourceMapDetailLevel"
= "="
field_access
field_access
identifier "SourceMap"
. "."
identifier "DetailLevel"
. "."
identifier "SYMBOLS"
; ";"
block_comment "/**\n * Charset to use when generating code. If null, then"...
field_declaration
modifiers
public "public"
type_identifier "Charset"
variable_declarator
identifier "outputCharset"
; ";"
block_comment "/**\n * Whether the named objects types included 'undefined"...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "looseTypes"
; ";"
block_comment "/**\n * Initializes compiler options. All options are disab"...
constructor_declaration (+854 nodes collapsed)
block_comment "/**\n * Returns the map of define replacements.\n */"
method_declaration (+285 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+36 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+30 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+37 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+37 nodes collapsed)
block_comment "/**\n * Skip all possible passes, to make the compiler as f"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "skipAllCompilerPasses"
formal_parameters
( "("
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "skipAllPasses"
= "="
true "true"
; ";"
} "}"
block_comment "/**\n * Whether the warnings guard in this Options object e"...
method_declaration (+29 nodes collapsed)
block_comment "/**\n * Whether the warnings guard in this Options object d"...
method_declaration (+29 nodes collapsed)
block_comment "/**\n * Configure the given type of warning to the given le"...
method_declaration (+34 nodes collapsed)
method_declaration
type_identifier "WarningsGuard"
identifier "getWarningsGuard"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "warningsGuard"
; ";"
} "}"
block_comment "/**\n * Add a guard to the set of warnings guards.\n */"
method_declaration (+52 nodes collapsed)
block_comment "/**\n * Sets the variable and property renaming policies fo"...
method_declaration (+36 nodes collapsed)
block_comment "/**\n * If true, flattens multi-level property names on ext"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "setCollapsePropertiesOnExternTypes"
formal_parameters
( "("
formal_parameter
boolean_type "boolean"
identifier "collapse"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "collapsePropertiesOnExternTypes"
= "="
identifier "collapse"
; ";"
} "}"
block_comment "/**\n * If true, process goog.testing.ObjectPropertyString "...
method_declaration
modifiers
public "public"
void_type "void"
identifier "setProcessObjectPropertyString"
formal_parameters
( "("
formal_parameter
boolean_type "boolean"
identifier "process"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "processObjectPropertyString"
= "="
identifier "process"
; ";"
} "}"
block_comment "/**\n * Sets the id generators to replace.\n */"
method_declaration (+35 nodes collapsed)
block_comment "/**\n * Sets the functions whose debug strings to replace.\n"...
method_declaration (+48 nodes collapsed)
method_declaration (+23 nodes collapsed)
method_declaration (+23 nodes collapsed)
block_comment "/**\n * If true, name anonymous functions only. All other p"...
method_declaration (+23 nodes collapsed)
method_declaration (+23 nodes collapsed)
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "shouldColorizeErrorOutput"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "colorizeErrorOutput"
; ";"
} "}"
block_comment "/**\n * If true, chain calls to functions that return this."...
method_declaration (+23 nodes collapsed)
block_comment "/**\n * Enable runtime type checking, which adds JS type as"...
method_declaration (+32 nodes collapsed)
method_declaration
modifiers
public "public"
void_type "void"
identifier "disableRuntimeTypeCheck"
formal_parameters
( "("
) ")"
block
{ "{"
expression_statement
assignment_expression
field_access
this "this"
. "."
identifier "runtimeTypeCheck"
= "="
false "false"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
method_declaration
modifiers
public "public"
type_identifier "CodingConvention"
identifier "getCodingConvention"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "codingConvention"
; ";"
} "}"
block_comment "/**\n * Sort inputs by their goog.provide/goog.require call"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "setManageClosureDependencies"
formal_parameters
( "("
formal_parameter
boolean_type "boolean"
identifier "newVal"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "manageClosureDependencies"
= "="
identifier "newVal"
; ";"
} "}"
block_comment "/**\n * Controls how detailed the compilation summary is. V"...
method_declaration (+24 nodes collapsed)
method_declaration (+23 nodes collapsed)
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "isExternExportsEnabled"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "externExports"
; ";"
} "}"
block_comment "/**\n * Sets the output charset by name.\n */"
block_comment "/**\n * Whether to include \"undefined\" in the default types"...
method_declaration (+23 nodes collapsed)
method_declaration (+39 nodes collapsed)
line_comment "////////////////////////////////////////////////////////////"...
line_comment "// Enums"
block_comment "/** When to do the extra sanity checks */"
enum_declaration (+23 nodes collapsed)
enum_declaration (+38 nodes collapsed)
} "}"

After

program
block_comment "/*\n * Copyright 2009 Google Inc.\n *\n * Licensed under the Ap"...
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "javascript"
. "."
identifier "jscomp"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "base"
. "."
identifier "Preconditions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Lists"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Maps"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Multimap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "common"
. "."
identifier "collect"
. "."
identifier "Sets"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "javascript"
. "."
identifier "rhino"
. "."
identifier "Node"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "javascript"
. "."
identifier "rhino"
. "."
identifier "Token"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "io"
. "."
identifier "Serializable"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "nio"
. "."
identifier "charset"
. "."
identifier "Charset"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Collections"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "List"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Map"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Set"
; ";"
block_comment "/**\n * Compiler options\n * @author nicksantos@google.com (Ni"...
class_declaration
modifiers
public "public"
class "class"
identifier "CompilerOptions"
super_interfaces
implements "implements"
type_list
type_identifier "Serializable"
, ","
type_identifier "Cloneable"
class_body
{ "{"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
decimal_integer_literal "7L"
; ";"
block_comment "/**\n * Configures the compiler for use as an IDE backend. "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "ideMode"
; ";"
block_comment "/**\n * Configures the compiler to skip as many passes as p"...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "skipAllPasses"
; ";"
block_comment "/**\n * If true, name anonymous functions only. All others "...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "nameAnonymousFunctionsOnly"
; ";"
block_comment "/**\n * Configures the compiler to run expensive sanity che"...
field_declaration
type_identifier "DevMode"
variable_declarator
identifier "devMode"
; ";"
line_comment "//--------------------------------"
line_comment "// Input Options"
line_comment "//--------------------------------"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "manageClosureDependencies"
= "="
false "false"
; ";"
block_comment "/** Returns localized replacement for MSG_* variables */"
line_comment "// Transient so that clients don't have to implement Seriali"...
field_declaration
modifiers
public "public"
transient "transient"
type_identifier "MessageBundle"
variable_declarator
identifier "messageBundle"
= "="
null_literal "null"
; ";"
line_comment "//--------------------------------"
line_comment "// Checks"
line_comment "//--------------------------------"
block_comment "/** Checks that all symbols are defined */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkSymbols"
; ";"
block_comment "/**\n * Checks that all variables with the @noshadow attrib"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkShadowVars"
; ";"
block_comment "/** Checks for suspicious variable definitions and undefined"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "aggressiveVarCheck"
; ";"
block_comment "/** Checks function arity */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkFunctions"
; ";"
block_comment "/** Checks method arity */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkMethods"
; ";"
block_comment "/** Makes sure no duplicate messages */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkDuplicateMessages"
; ";"
block_comment "/** Allows old deprecated js message style */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "allowLegacyJsMessages"
; ";"
block_comment "/**\n * Whether we should throw an exception in case if the"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "strictMessageReplacement"
; ";"
block_comment "/** Checks for suspicious statements that have no effect */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkSuspiciousCode"
; ";"
block_comment "/** Checks for invalid control structures */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkControlStructures"
; ";"
block_comment "/** Checks for non-extern properties that are read but never"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkUndefinedProperties"
; ";"
block_comment "/**\n * Checks for non-extern properties that are written b"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkUnusedPropertiesEarly"
; ";"
block_comment "/** Checks types on expressions */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkTypes"
; ";"
block_comment "/** Tightens types based on a global analysis. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "tightenTypes"
; ";"
line_comment "// TODO(user): A temporary flag to prevent the type inferenc"...
line_comment "// running in the global scope because it takes too long to "...
block_comment "/** Runs a flow sensitive type inference in the global scope"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inferTypesInGlobalScope"
; ";"
block_comment "/** Checks for inexistant property calls */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkTypedPropertyCalls"
; ";"
block_comment "/**\n * Flags a warning if a property is missing the @overr"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "reportMissingOverride"
; ";"
block_comment "/** Flags a warning for every node whose type could not be d"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "reportUnknownTypes"
; ";"
block_comment "/** Checks for missing goog.require() calls **/"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkRequires"
; ";"
block_comment "/** Checks for missing goog.provides() calls **/"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkProvides"
; ";"
block_comment "/**\n * Checks the integrity of references to qualified glo"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkGlobalNamesLevel"
; ";"
block_comment "/** Sets the check level for bad Closure require calls. */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "brokenClosureRequiresLevel"
; ";"
block_comment "/**\n * Checks for certain uses of the {@code this} keyword"...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkGlobalThisLevel"
; ";"
block_comment "/**\n * Checks that certain string literals only appear in "...
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkMissingGetCssNameLevel"
; ";"
block_comment "/**\n * Regex of string literals that may only appear in go"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "checkMissingGetCssNameBlacklist"
; ";"
block_comment "/** Checks that the synctactic restrictions of ES5 strict mo"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkEs5Strict"
; ";"
block_comment "/** Checks that the synctactic restrictions of Caja are met."...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "checkCaja"
; ";"
line_comment "//--------------------------------"
line_comment "// Optimizations"
line_comment "//--------------------------------"
block_comment "/** Folds constants (e.g. (2 + 3) to 5) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "foldConstants"
; ";"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeConstantExpressions"
; ";"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "deadAssignmentElimination"
; ";"
block_comment "/** Inlines constants (symbols that are all CAPS) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineConstantVars"
; ";"
block_comment "/** Inlines short functions */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineFunctions"
; ";"
block_comment "/** Enhanced function inlining */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "decomposeExpressions"
; ";"
block_comment "/** Enhanced function inlining */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineAnonymousFunctionExpressions"
; ";"
block_comment "/** Enhanced function inlining */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineLocalFunctions"
; ";"
block_comment "/** Move code to a deeper module */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "crossModuleCodeMotion"
; ";"
block_comment "/** Merge two variables together as one. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "coalesceVariableNames"
; ";"
block_comment "/** Move methds to a deeper module */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "crossModuleMethodMotion"
; ";"
block_comment "/** Inlines trivial getters */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineGetters"
; ";"
block_comment "/** Inlines variables */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineVariables"
; ";"
block_comment "/** Inlines variables */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "inlineLocalVariables"
; ";"
line_comment "// TODO(user): This is temporary. Once flow sensitive inlini"...
line_comment "// Remove this."
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "flowSensitiveInlineVariables"
; ";"
block_comment "/** Removes code associated with unused global names */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "smartNameRemoval"
; ";"
block_comment "/** Removes code that will never execute */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeDeadCode"
; ";"
block_comment "/** Checks for unreachable code */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkUnreachableCode"
; ";"
block_comment "/** Checks for missing return statements */"
field_declaration
modifiers
public "public"
type_identifier "CheckLevel"
variable_declarator
identifier "checkMissingReturn"
; ";"
block_comment "/** Extracts common prototype member declarations */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "extractPrototypeMemberDeclarations"
; ";"
block_comment "/** Removes functions that have no body */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeEmptyFunctions"
; ";"
block_comment "/** Removes unused member prototypes */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedPrototypeProperties"
; ";"
block_comment "/** Tells AnalyzePrototypeProperties it can remove externed "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedPrototypePropertiesInExterns"
; ";"
block_comment "/** Removes unused variables */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedVars"
; ";"
block_comment "/** Removes unused variables in global scope. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeUnusedVarsInGlobalScope"
; ";"
block_comment "/** Adds variable aliases for externals to reduce code size "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "aliasExternals"
; ";"
block_comment "/**\n * If set to a non-empty string, then during an alias "...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "aliasableGlobals"
; ";"
block_comment "/**\n * Additional globals that can not be aliased since th"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "unaliasableGlobals"
; ";"
block_comment "/** Collapses multiple variable declarations into one */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "collapseVariableDeclarations"
; ";"
block_comment "/** Group multiple variable declarations into one */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "groupVariableDeclarations"
; ";"
block_comment "/**\n * Collapses anonymous function declarations into name"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "collapseAnonymousFunctions"
; ";"
block_comment "/**\n * If set to a non-empty set, those strings literals w"...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "aliasableStrings"
; ";"
block_comment "/**\n * A blacklist in the form of a regular expression to "...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "aliasStringsBlacklist"
; ";"
block_comment "/**\n * Aliases all string literals to global instances, to"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "aliasAllStrings"
; ";"
block_comment "/** Print string usage as part of the compilation log. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "outputJsStringUsage"
; ";"
block_comment "/** Converts quoted property accesses to dot syntax (a['b'] "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "convertToDottedProperties"
; ";"
block_comment "/** Reduces the size of common function expressions. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "rewriteFunctionExpressions"
; ";"
block_comment "/**\n * Remove unused and constant parameters.\n */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "optimizeParameters"
; ";"
block_comment "/**\n * Provide formal names for elements of arguments arra"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "optimizeArgumentsArray"
; ";"
block_comment "/** Chains calls to functions that return this. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "chainCalls"
; ";"
line_comment "//--------------------------------"
line_comment "// Renaming"
line_comment "//--------------------------------"
block_comment "/** Controls which variables get renamed. */"
field_declaration
modifiers
public "public"
type_identifier "VariableRenamingPolicy"
variable_declarator
identifier "variableRenaming"
; ";"
block_comment "/** Controls which properties get renamed. */"
field_declaration
modifiers
public "public"
type_identifier "PropertyRenamingPolicy"
variable_declarator
identifier "propertyRenaming"
; ";"
block_comment "/** Controls label renaming. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "labelRenaming"
; ";"
block_comment "/** Reserve property names on the global this object. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "reserveRawExports"
; ";"
block_comment "/**\n * Generate pseudo names for variables and properties "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "generatePseudoNames"
; ";"
block_comment "/** Specifies a prefix for all globals */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "renamePrefix"
; ";"
block_comment "/** Aliases true, false, and null to variables with shorter "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "aliasKeywords"
; ";"
block_comment "/** Flattens multi-level property names (e.g. a$b = x) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "collapseProperties"
; ";"
block_comment "/** Flattens multi-level property names on extern types (e.g"...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "collapsePropertiesOnExternTypes"
; ";"
block_comment "/**\n * Devirtualize prototype method by rewriting them to "...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "devirtualizePrototypeMethods"
; ";"
block_comment "/**\n * Use @nosideeffects annotations, function bodies and"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "computeFunctionSideEffects"
; ";"
block_comment "/**\n * Where to save debug report for compute function sid"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "debugFunctionSideEffectsPath"
; ";"
block_comment "/**\n * Rename properties to disambiguate between unrelated"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "disambiguateProperties"
; ";"
block_comment "/** Rename unrelated properties to the same name to reduce c"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "ambiguateProperties"
; ";"
block_comment "/** Give anonymous functions names for easier debugging */"
field_declaration
modifiers
public "public"
type_identifier "AnonymousFunctionNamingPolicy"
variable_declarator
identifier "anonymousFunctionNaming"
; ";"
block_comment "/** Serialized input variable renaming map. */"
field_declaration
modifiers
public "public"
array_type
integral_type
byte "byte"
dimensions
[ "["
] "]"
variable_declarator
identifier "inputVariableMapSerialized"
; ";"
block_comment "/** Serialized input property renaming map. */"
field_declaration
modifiers
public "public"
array_type
integral_type
byte "byte"
dimensions
[ "["
] "]"
variable_declarator
identifier "inputPropertyMapSerialized"
; ";"
block_comment "/** Whether to export test functions. */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "exportTestFunctions"
; ";"
line_comment "//--------------------------------"
line_comment "// Special-purpose alterations"
line_comment "//--------------------------------"
block_comment "/** Inserts runtime type assertions for debugging. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "runtimeTypeCheck"
; ";"
block_comment "/**\n * A JS function to be used for logging runtime type a"...
field_declaration
type_identifier "String"
variable_declarator
identifier "runtimeTypeCheckLogFunction"
; ";"
block_comment "/** A CodingConvention to use during the compile. */"
field_declaration
modifiers
private "private"
type_identifier "CodingConvention"
variable_declarator
identifier "codingConvention"
; ";"
block_comment "/** Instrument code for the purpose of collecting coverage d"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "instrumentForCoverage"
; ";"
block_comment "/**\n * Instrument code for the purpose of collecting cover"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "instrumentForCoverageOnly"
; ";"
block_comment "/** Add code to skip properties that Caja adds to Object.pro"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "ignoreCajaProperties"
; ";"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "syntheticBlockStartMarker"
; ";"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "syntheticBlockEndMarker"
; ";"
block_comment "/** Compiling locale */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "locale"
; ";"
block_comment "/** Sets the special \"COMPILED\" value to true */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "markAsCompiled"
; ";"
block_comment "/** Removes try...catch...finally blocks for easier debuggin"...
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "removeTryCatchFinally"
; ";"
block_comment "/** Processes goog.provide() and goog.require() calls */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "closurePass"
; ";"
block_comment "/** Rewrite new Date(goog.now()) to new Date(). */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "rewriteNewDateGoogNow"
; ";"
block_comment "/** Remove goog.abstractMethod assignments. */"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "removeAbstractMethods"
; ";"
block_comment "/** Gather CSS names (requires closurePass) */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "gatherCssNames"
; ";"
block_comment "/** Names of types to strip */"
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripTypes"
; ";"
block_comment "/** Name suffixes that determine which variables and propert"...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripNameSuffixes"
; ";"
block_comment "/** Name prefixes that determine which variables and propert"...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripNamePrefixes"
; ";"
block_comment "/** Qualified type name prefixes that determine which types "...
field_declaration
modifiers
public "public"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "stripTypePrefixes"
; ";"
block_comment "/** Custom passes */"
field_declaration
modifiers
public "public"
transient "transient"
generic_type
type_identifier "Multimap"
type_arguments
< "<"
type_identifier "CustomPassExecutionTime"
, ","
type_identifier "CompilerPass"
> ">"
variable_declarator
identifier "customPasses"
; ";"
block_comment "/** Mark no side effect calls */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "markNoSideEffectCalls"
; ";"
block_comment "/** Replacements for @defines. Will be Boolean, Numbers, or "...
field_declaration
modifiers
private "private"
generic_type
type_identifier "Map"
type_arguments
< "<"
type_identifier "String"
, ","
type_identifier "Object"
> ">"
variable_declarator
identifier "defineReplacements"
; ";"
block_comment "/** Move top level function declarations to the top */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "moveFunctionDeclarations"
; ";"
block_comment "/** Instrumentation template to use */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "instrumentationTemplate"
; ";"
block_comment "/**\n * App identifier string for use by the instrumentatio"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "appNameStr"
; ";"
block_comment "/** Record function information */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "recordFunctionInformation"
; ";"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "generateExports"
; ";"
block_comment "/** Map used in the renaming of CSS class names. */"
field_declaration
modifiers
public "public"
type_identifier "CssRenamingMap"
variable_declarator
identifier "cssRenamingMap"
; ";"
block_comment "/** Process instances of goog.testing.ObjectPropertyString. "...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "processObjectPropertyString"
; ";"
block_comment "/** Id generators to replace. */"
field_declaration
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "idGenerators"
; ";"
block_comment "/** Configuration strings */"
field_declaration
generic_type
type_identifier "List"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "replaceStringsFunctionDescriptions"
; ";"
field_declaration
type_identifier "String"
variable_declarator
identifier "replaceStringsPlaceholderToken"
; ";"
line_comment "//--------------------------------"
line_comment "// Output options"
line_comment "//--------------------------------"
block_comment "/** Output in pretty indented format */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "prettyPrint"
; ";"
block_comment "/** Line break the output a bit more aggressively */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "lineBreak"
; ";"
block_comment "/** Prints a separator comment before each js script */"
field_declaration
modifiers
public "public"
boolean_type "boolean"
variable_declarator
identifier "printInputDelimiter"
; ";"
block_comment "/** The string to use as the separator for printInputDelimit"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "inputDelimiter"
= "="
string_literal
" "\""
string_fragment "// Input %num%"
" "\""
; ";"
block_comment "/** Where to save a report of global name usage */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "reportPath"
; ";"
field_declaration
modifiers
public "public"
type_identifier "TracerMode"
variable_declarator
identifier "tracer"
; ";"
field_declaration
modifiers
private "private"
boolean_type "boolean"
variable_declarator
identifier "colorizeErrorOutput"
; ";"
field_declaration
modifiers
public "public"
type_identifier "ErrorFormat"
variable_declarator
identifier "errorFormat"
; ";"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "jsOutputFile"
; ";"
field_declaration
modifiers
private "private"
transient "transient"
type_identifier "ComposeWarningsGuard"
variable_declarator
identifier "warningsGuard"
; ";"
field_declaration
integral_type
int "int"
variable_declarator
identifier "summaryDetailLevel"
= "="
decimal_integer_literal "1"
; ";"
line_comment "//--------------------------------"
line_comment "// Special Output Options"
line_comment "//--------------------------------"
block_comment "/**\n * Whether the exports should be made available via {@"...
field_declaration
modifiers
private "private"
boolean_type "boolean"
variable_declarator
identifier "externExports"
; ";"
block_comment "/** The output path for the created externs file. */"
field_declaration
type_identifier "String"
variable_declarator
identifier "externExportsPath"
; ";"
block_comment "/** Where to save a cross-reference report from the name ref"...
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "nameReferenceReportPath"
; ";"
block_comment "/** Where to save the name reference graph */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "nameReferenceGraphPath"
; ";"
line_comment "//--------------------------------"
line_comment "// Debugging Options"
line_comment "//--------------------------------"
block_comment "/** The output path for the source map. */"
field_declaration
modifiers
public "public"
type_identifier "String"
variable_declarator
identifier "sourceMapOutputPath"
; ";"
block_comment "/** The detail level for the generated source map. */"
field_declaration
modifiers
public "public"
scoped_type_identifier
type_identifier "SourceMap"
. "."
type_identifier "DetailLevel"
variable_declarator
identifier "sourceMapDetailLevel"
= "="
field_access
field_access
identifier "SourceMap"
. "."
identifier "DetailLevel"
. "."
identifier "SYMBOLS"
; ";"
block_comment "/**\n * Charset to use when generating code. If null, then"...
field_declaration
type_identifier "String"
variable_declarator
identifier "outputCharset"
; ";"
block_comment "/**\n * Whether the named objects types included 'undefined"...
field_declaration
boolean_type "boolean"
variable_declarator
identifier "looseTypes"
; ";"
block_comment "/**\n * Initializes compiler options. All options are disab"...
constructor_declaration (+854 nodes collapsed)
block_comment "/**\n * Returns the map of define replacements.\n */"
method_declaration (+285 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+36 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+30 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+37 nodes collapsed)
block_comment "/**\n * Sets the value of the {@code @define} variable in J"...
method_declaration (+37 nodes collapsed)
block_comment "/**\n * Skip all possible passes, to make the compiler as f"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "skipAllCompilerPasses"
formal_parameters
( "("
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "skipAllPasses"
= "="
true "true"
; ";"
} "}"
block_comment "/**\n * Whether the warnings guard in this Options object e"...
method_declaration (+29 nodes collapsed)
block_comment "/**\n * Whether the warnings guard in this Options object d"...
method_declaration (+29 nodes collapsed)
block_comment "/**\n * Configure the given type of warning to the given le"...
method_declaration (+34 nodes collapsed)
method_declaration
type_identifier "WarningsGuard"
identifier "getWarningsGuard"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "warningsGuard"
; ";"
} "}"
block_comment "/**\n * Add a guard to the set of warnings guards.\n */"
method_declaration (+52 nodes collapsed)
block_comment "/**\n * Sets the variable and property renaming policies fo"...
method_declaration (+36 nodes collapsed)
block_comment "/**\n * If true, flattens multi-level property names on ext"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "setCollapsePropertiesOnExternTypes"
formal_parameters
( "("
formal_parameter
boolean_type "boolean"
identifier "collapse"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "collapsePropertiesOnExternTypes"
= "="
identifier "collapse"
; ";"
} "}"
block_comment "/**\n * If true, process goog.testing.ObjectPropertyString "...
method_declaration
modifiers
public "public"
void_type "void"
identifier "setProcessObjectPropertyString"
formal_parameters
( "("
formal_parameter
boolean_type "boolean"
identifier "process"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "processObjectPropertyString"
= "="
identifier "process"
; ";"
} "}"
block_comment "/**\n * Sets the id generators to replace.\n */"
method_declaration (+35 nodes collapsed)
block_comment "/**\n * Sets the functions whose debug strings to replace.\n"...
method_declaration (+48 nodes collapsed)
method_declaration (+23 nodes collapsed)
method_declaration (+23 nodes collapsed)
block_comment "/**\n * If true, name anonymous functions only. All other p"...
method_declaration (+23 nodes collapsed)
method_declaration (+23 nodes collapsed)
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "shouldColorizeErrorOutput"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "colorizeErrorOutput"
; ";"
} "}"
block_comment "/**\n * If true, chain calls to functions that return this."...
method_declaration (+23 nodes collapsed)
block_comment "/**\n * Enable runtime type checking, which adds JS type as"...
method_declaration (+32 nodes collapsed)
method_declaration
modifiers
public "public"
void_type "void"
identifier "disableRuntimeTypeCheck"
formal_parameters
( "("
) ")"
block
{ "{"
expression_statement
assignment_expression
field_access
this "this"
. "."
identifier "runtimeTypeCheck"
= "="
false "false"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
method_declaration
modifiers
public "public"
type_identifier "CodingConvention"
identifier "getCodingConvention"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "codingConvention"
; ";"
} "}"
block_comment "/**\n * Sort inputs by their goog.provide/goog.require call"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "setManageClosureDependencies"
formal_parameters
( "("
formal_parameter
boolean_type "boolean"
identifier "newVal"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "manageClosureDependencies"
= "="
identifier "newVal"
; ";"
} "}"
block_comment "/**\n * Controls how detailed the compilation summary is. V"...
method_declaration (+24 nodes collapsed)
method_declaration (+23 nodes collapsed)
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "isExternExportsEnabled"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "externExports"
; ";"
} "}"
block_comment "/**\n * Sets the output charset by name.\n */"
method_declaration
modifiers
public "public"
void_type "void"
identifier "setOutputCharset"
formal_parameters
( "("
formal_parameter
type_identifier "String"
identifier "charsetName"
) ")"
block
{ "{"
expression_statement
assignment_expression
field_access
this "this"
. "."
identifier "outputCharset"
= "="
identifier "charsetName"
; ";"
} "}"
block_comment "/**\n * Whether to include \"undefined\" in the default types"...
method_declaration (+23 nodes collapsed)
method_declaration (+39 nodes collapsed)
line_comment "////////////////////////////////////////////////////////////"...
line_comment "// Enums"
block_comment "/** When to do the extra sanity checks */"
enum_declaration (+23 nodes collapsed)
enum_declaration (+38 nodes collapsed)
} "}"