class |
AstValidator |
This class walks the AST and validates that the structure is correct.
|
class |
CheckConformance |
Provides a framework for checking code against a set of user configured conformance rules.
|
class |
CheckMissingOverrideTypes |
Checks if the @override methods are missing type annotations.
|
class |
CheckMissingRequires |
A pass to detect references to fully qualified Closure namespaces.
|
class |
CheckTypeImportCodeReferences |
Checks for invalid code references to type-only imports (i.e., goog.requireType).
|
class |
ChromePass |
Compiler pass for Chrome-specific needs.
|
class |
ClosureCheckModule |
Checks that goog.module() is used correctly.
|
class |
ConcretizeStaticInheritanceForInlining |
Rewrites static inheritance to explicitly copy inherited properties from superclass to subclass
so that the optimizer knows the subclass has those properties.
|
class |
ControlFlowAnalysis |
This is a compiler pass that computes a control flow graph.
|
class |
CrossChunkMethodMotion |
Move prototype methods into later chunks.
|
class |
CrossChunkReferenceCollector |
Collects global variable references for use by CrossChunkCodeMotion .
|
class |
DeadPropertyAssignmentElimination |
An optimization pass that finds and removes dead property assignments within functions and
classes.
|
class |
Es6CheckModule |
Checks that ES6 Modules are used correctly, and do not reference undefined keywords or features.
|
class |
Es6ConvertSuper |
Converts super.method() calls and adds constructors to any classes that lack them.
|
class |
Es6ExtractClasses |
Extracts ES6 classes defined in function calls to local constants.
|
class |
Es6ForOfConverter |
Converts ES6 "for of" loops to ES5.
|
class |
Es6NormalizeShorthandProperties |
Normalizes shorthand object properties.
|
class |
Es6RelativizeImportPaths |
Rewrites ES6 import paths to be relative after resolving according to the compiler's module
resolver.
|
class |
Es6RenameVariablesInParamLists |
Renames variables declared in function bodies so they don't shadow any variable referenced in the
param list.
|
class |
Es6RewriteArrowFunction |
Converts ES6 arrow functions to standard anonymous ES3 functions.
|
class |
Es6RewriteBlockScopedDeclaration |
Rewrite "let"s and "const"s as "var"s.
|
class |
Es6RewriteBlockScopedFunctionDeclaration |
Rewrite block-scoped function declarations as "let"s.
|
class |
Es6RewriteClass |
Converts ES6 classes to valid ES5 or ES3 code.
|
class |
Es6RewriteClassExtendsExpressions |
Extracts ES6 class extends expressions and creates an alias.
|
class |
Es6RewriteDestructuring |
Rewrites destructuring patterns and default parameters to valid ES3 code or to a different form
of destructuring.
|
class |
Es6RewriteModules |
Rewrites a ES6 module into a form that can be safely concatenated.
|
class |
Es6RewriteModulesToCommonJsModules |
Rewrites an ES6 module to a CommonJS-like module for the sake of per-file transpilation +
bunlding (e.g.
|
class |
Es6RewriteRestAndSpread |
Converts REST parameters and SPREAD expressions.
|
class |
Es6RewriteScriptsToModules |
Rewrites a script which was imported as a module into an ES6 module.
|
class |
Es6SplitVariableDeclarations |
Splits variable declarations that declare multiple variables into separate declarations, if at
least one of the declarations is a destructuring declaration.
|
class |
Es7RewriteExponentialOperator |
Replaces the ES7 `**` and `**=` operators to calls to `Math.pow`.
|
class |
ExportTestFunctions |
Generates goog.exportSymbol for test functions, so they can be recognized
by the test runner, even if the code is compiled.
|
class |
ForbidDynamicImportUsage |
Warns at any usage of Dynamic Import expressions that they are unable to be transpiled.
|
class |
GatherGetterAndSetterProperties |
Finds getter and setter properties in the AST.
|
class |
GatherModuleMetadata |
Gathers metadata around modules that is useful for checking imports / requires and creates a
ModuleMetadataMap .
|
class |
GenerateExports |
Generates goog.exportSymbol/goog.exportProperty for the @export annotation.
|
class |
ImplicitNullabilityCheck |
Warn about types in JSDoc that are implicitly nullable.
|
class |
InjectTranspilationRuntimeLibraries |
Injects JS library code that may be needed by the transpiled form of the input source code.
|
class |
J2clAssertRemovalPass |
An optimization pass to remove J2CL Asserts.$assert.
|
class |
J2clChecksPass |
Performs correctness checks which are specific to J2CL-generated patterns.
|
class |
J2clClinitPrunerPass |
An optimization pass to prune J2CL clinits.
|
class |
J2clConstantHoisterPass |
An optimization pass for J2CL-generated code to hoist some constant assignments out clinit method
to declaration phase so they could be used by other optimization passes for static evaluation.
|
class |
J2clPass |
A normalization pass to inline some J2CL calls to enable other optimizations.
|
class |
J2clPropertyInlinerPass |
This pass targets J2CL output.
|
class |
J2clUtilGetDefineRewriterPass |
A normalization pass to re-write Util.$getDefine calls to make them work in compiled mode.
|
class |
JsMessageVisitor |
Traverses across parsed tree and finds I18N messages.
|
class |
LateEs6ToEs3Converter |
Converts ES6 code to valid ES5 code.
|
class |
MarkUntranspilableFeaturesAsRemoved |
Looks for presence of features that are not supported for transpilation (mostly new RegExp
features).
|
class |
ProcessCommonJSModules |
Rewrites a CommonJS module http://wiki.commonjs.org/wiki/Modules/1.1.1 into a form that can be
safely concatenated.
|
class |
ReferenceCollector |
A helper class for passes that want to access all information about where a variable is
referenced and declared at once and then make a decision as to how it should be handled, possibly
inlining, reordering, or generating warnings.
|
class |
RemoveCastNodes |
Normalizes all CAST nodes out of the AST.
|
class |
RewriteAsyncFunctions |
Converts async functions to valid ES6 generator functions code.
|
class |
RewriteAsyncIteration |
Converts async generator functions into a function returning a new $jscomp.AsyncGenWrapper around
the original block and awaits/yields converted to yields of ActionRecords.
|
class |
RewriteClassFields |
Replaces the ES2021 class field with constructor declaration.
|
class |
RewriteDynamicImports |
Rewrite dynamic import expressions to account for bundling and module rewriting.
|
class |
RewriteGoogJsImports |
Looks for references to Closure's goog.js file and globalizes.
|
class |
RewriteJsonToModule |
Rewrites a JSON file to be a module export.
|
class |
RewriteLogicalAssignmentOperatorsPass |
Replaces the ES2020 `||=`, `&&=`, and `??=` operators.
|
class |
RewriteNullishCoalesceOperator |
Replaces the ES2020 `??` operator with conditional (?:).
|
class |
RewriteObjectSpread |
Converts object spread to valid ES2017 code.
|
class |
RewritePolyfills |
Injects polyfill libraries to ensure that ES6+ library functions are available.
|
class |
SyncCompilerFeatures |
Sets compiler feature set to features used in the externs and sources
|
class |
TransformAMDToCJSModule |
Rewrites an AMD module https://github.com/amdjs/amdjs-api/wiki/AMD to a
CommonJS module.
|
class |
TypeCheck |
Checks the types of JS expressions against any declared type information.
|
class |
WhitespaceWrapGoogModules |
Replicates the effect of ClosureBundler in whitespace-only mode and wraps goog.modules
in goog.loadModule calls.
|