Package | Description |
---|---|
com.google.javascript.jscomp |
Provides the core compiler and its public API.
|
Modifier and Type | Field and Description |
---|---|
private JSModule |
CrossModuleCodeMotion.NamedInfo.declModule |
private JSModule |
AnalyzePrototypeProperties.NameInfo.deepestCommonModuleRef |
private JSModule |
CrossModuleCodeMotion.NamedInfo.deepestModule |
private JSModule |
JSModuleGraph.ModuleDependenceException.dependentModule |
private JSModule |
ProcessClosurePrimitives.ProvidedName.explicitModule |
private JSModule |
ProcessClosurePrimitives.ProvidedName.firstModule |
private JSModule |
AnalyzePrototypeProperties.firstModule |
private JSModule |
ProcessClosurePrimitives.ProvidedName.minimumModule |
private JSModule |
JSModuleGraph.ModuleDependenceException.module |
(package private) JSModule |
DefinitionSite.module |
private JSModule |
InlineFunctions.FunctionState.module |
(package private) JSModule |
UseSite.module |
(package private) JSModule |
FunctionInjector.Reference.module |
(package private) JSModule |
CrossModuleCodeMotion.Declaration.module |
private JSModule |
CrossModuleCodeMotion.InstanceofInfo.module |
private JSModule |
CompilerInput.module |
(package private) JSModule |
GlobalNamespace.AstChange.module |
(package private) JSModule |
GlobalNamespace.Ref.module |
(package private) JSModule |
RewritePolyfills.InjectedInstaller.module |
private JSModule |
AnalyzePrototypeProperties.GlobalFunction.module |
private JSModule |
AnalyzePrototypeProperties.AssignmentProperty.module |
private JSModule |
AnalyzePrototypeProperties.LiteralProperty.module |
(package private) JSModule |
AliasStrings.StringInfo.moduleToContainDecl |
Modifier and Type | Field and Description |
---|---|
private java.util.Map<JSModule,java.util.Set<JSModule>> |
JSModuleGraph.dependencyMap
dependencyMap is a cache of dependencies that makes the dependsOn
function faster.
|
private java.util.Map<JSModule,java.util.Set<JSModule>> |
JSModuleGraph.dependencyMap
dependencyMap is a cache of dependencies that makes the dependsOn
function faster.
|
private java.util.List<JSModule> |
JSModule.deps
Modules that this module depends on
|
private com.google.common.collect.ListMultimap<JSModule,Node> |
MoveFunctionDeclarations.functions |
private java.util.List<JSModule> |
JSModuleGraph.modules |
private java.util.List<JSModule> |
Compiler.modules |
private java.util.List<java.util.List<JSModule>> |
JSModuleGraph.modulesByDepth
Lists of modules at each depth.
|
private com.google.common.base.Supplier<java.util.List<JSModule>> |
AbstractCommandLineRunner.modulesSupplierForTesting |
private java.util.Map<JSModule,Node> |
AliasStrings.moduleVarParentMap
Map from module to the node in that module that should parent any string
variable declarations that have to be moved into that module
|
private java.util.Map<JSModule,Node> |
CrossModuleCodeMotion.moduleVarParentMap
Map from module to the node in that module that should parent any string
variable declarations that have to be moved into that module
|
private LinkedDirectedGraph<AnalyzePrototypeProperties.NameInfo,JSModule> |
AnalyzePrototypeProperties.symbolGraph |
Modifier and Type | Method and Description |
---|---|
(package private) JSModule |
JSModuleGraph.getDeepestCommonDependency(JSModule m1,
JSModule m2)
Finds the deepest common dependency of two modules, not including the two
modules themselves.
|
JSModule |
JSModuleGraph.getDeepestCommonDependencyInclusive(java.util.Collection<JSModule> modules)
Returns the deepest common dependency of the given modules.
|
JSModule |
JSModuleGraph.getDeepestCommonDependencyInclusive(JSModule m1,
JSModule m2)
Finds the deepest common dependency of two modules, including the
modules themselves.
|
(package private) JSModule |
AnalyzePrototypeProperties.NameInfo.getDeepestCommonModuleRef()
Returns the deepest common module of all the references to this
property.
|
JSModule |
JSModuleGraph.ModuleDependenceException.getDependentModule() |
JSModule |
JSModuleGraph.ModuleDependenceException.getModule() |
JSModule |
NodeTraversal.getModule()
Gets the current input module.
|
JSModule |
InlineFunctions.FunctionState.getModule() |
JSModule |
CompilerInput.getModule()
Returns the module to which the input belongs.
|
(package private) JSModule |
GlobalNamespace.Ref.getModule() |
JSModule |
AnalyzePrototypeProperties.Symbol.getModule()
Returns the module where this appears.
|
JSModule |
AnalyzePrototypeProperties.GlobalFunction.getModule() |
JSModule |
AnalyzePrototypeProperties.AssignmentProperty.getModule() |
JSModule |
AnalyzePrototypeProperties.LiteralProperty.getModule() |
private JSModule |
CrossModuleCodeMotion.getModule(ReferenceCollectingCallback.Reference ref) |
(package private) JSModule |
CollapseProperties.getRefModule(ReferenceCollectingCallback.Reference ref) |
(package private) JSModule |
JSModuleGraph.getRootModule()
Gets the root module.
|
Modifier and Type | Method and Description |
---|---|
(package private) java.util.List<JSModule> |
AbstractCommandLineRunner.createJsModules(java.util.List<AbstractCommandLineRunner.JsModuleSpec> specs,
java.util.List<SourceFile> inputs)
Creates module objects from a list of js module specifications.
|
java.util.Set<JSModule> |
JSModule.getAllDependencies()
Returns the transitive closure of dependencies starting from the
dependencies of this module.
|
(package private) java.lang.Iterable<JSModule> |
JSModuleGraph.getAllModules()
Gets an iterable over all modules in dependency order.
|
java.util.List<JSModule> |
JSModule.getDependencies()
Gets the list of modules that this module depends on.
|
(package private) java.util.Map<java.lang.String,JSModule> |
JSModuleGraph.getModulesByName()
Gets all modules indexed by name.
|
java.util.Set<JSModule> |
JSModule.getThisAndAllDependencies()
Returns this module and all of its dependencies in one list.
|
(package private) java.util.Set<JSModule> |
JSModuleGraph.getTransitiveDepsDeepestFirst(JSModule m)
Creates an iterable over the transitive dependencies of module
m
in a non-increasing depth ordering. |
(package private) LinkedDirectedGraph<JSModule,java.lang.String> |
JSModuleGraph.toGraphvizGraph() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
ProcessClosurePrimitives.ProvidedName.addDefinition(Node node,
JSModule module)
Record function declaration, variable declaration or assignment that
refers to the same name as the provide statement.
|
void |
JSModule.addDependency(JSModule dep)
Adds a dependency on another module.
|
private static void |
JSModuleGraph.addDeps(java.util.Set<JSModule> deps,
JSModule m)
Adds a module's transitive dependencies to a set.
|
private void |
AnalyzePrototypeProperties.ProcessProperties.addGlobalUseOfSymbol(java.lang.String name,
JSModule module,
AnalyzePrototypeProperties.SymbolType type) |
(package private) void |
ProcessClosurePrimitives.ProvidedName.addProvide(Node node,
JSModule module,
boolean explicit)
Add an implicit or explicit provide.
|
private void |
AnalyzePrototypeProperties.ProcessProperties.addSymbolUse(java.lang.String name,
JSModule module,
AnalyzePrototypeProperties.SymbolType type) |
(package private) void |
CrossModuleCodeMotion.NamedInfo.addUsedModule(JSModule m) |
void |
GlobalNamespace.BuildGlobalNamespace.collect(JSModule module,
Scope scope,
Node n) |
int |
JSModuleGraph.InverseDepthComparator.compare(JSModule m1,
JSModule m2) |
private AbstractCommandLineRunner.JsonFileSpec |
AbstractCommandLineRunner.createJsonFileFromModule(JSModule module)
Given an output module, convert it to a JSONFileSpec with associated
sourcemap
|
boolean |
JSModuleGraph.dependsOn(JSModule src,
JSModule m)
Determines whether this module depends on a given module.
|
private static int |
JSModuleGraph.depthCompare(JSModule m1,
JSModule m2) |
(package private) GlobalNamespace.Ref.Type |
GlobalNamespace.BuildGlobalNamespace.determineGetTypeForHookOrBooleanExpr(JSModule module,
Scope scope,
Node parent,
java.lang.String name)
Determines whether the result of a hook (x?y:z) or boolean expression
(x||y) or (x&&y) is assigned to a specific global name.
|
private java.lang.String |
AbstractCommandLineRunner.expandCommandLinePath(java.lang.String path,
JSModule forModule)
Expand a file path specified on the command-line.
|
(package private) java.lang.String |
AbstractCommandLineRunner.expandSourceMapPath(B options,
JSModule forModule)
Expansion function for source map.
|
(package private) JSModule |
JSModuleGraph.getDeepestCommonDependency(JSModule m1,
JSModule m2)
Finds the deepest common dependency of two modules, not including the two
modules themselves.
|
JSModule |
JSModuleGraph.getDeepestCommonDependencyInclusive(JSModule m1,
JSModule m2)
Finds the deepest common dependency of two modules, including the
modules themselves.
|
private java.lang.String |
AbstractCommandLineRunner.getModuleOutputFileName(JSModule m) |
(package private) abstract Node |
AbstractCompiler.getNodeForCodeInsertion(JSModule module)
Gets a suitable SCRIPT node to serve as a parent for code insertion.
|
(package private) Node |
Compiler.getNodeForCodeInsertion(JSModule module) |
(package private) java.util.Set<JSModule> |
JSModuleGraph.getTransitiveDepsDeepestFirst(JSModule m)
Creates an iterable over the transitive dependencies of module
m
in a non-increasing depth ordering. |
(package private) void |
GlobalNamespace.BuildGlobalNamespace.handleGet(JSModule module,
Scope scope,
Node n,
Node parent,
java.lang.String name)
Updates our representation of the global namespace to reflect a read
of a global name.
|
(package private) void |
GlobalNamespace.BuildGlobalNamespace.handleGet(JSModule module,
Scope scope,
Node n,
Node parent,
java.lang.String name,
GlobalNamespace.Ref.Type type)
Updates our representation of the global namespace to reflect a read
of a global name.
|
(package private) void |
GlobalNamespace.BuildGlobalNamespace.handleSetFromGlobal(JSModule module,
Scope scope,
Node n,
Node parent,
java.lang.String name,
boolean isPropAssign,
GlobalNamespace.Name.Type type)
Updates our representation of the global namespace to reflect an
assignment to a global name in global scope.
|
(package private) void |
GlobalNamespace.BuildGlobalNamespace.handleSetFromLocal(JSModule module,
Scope scope,
Node n,
Node parent,
java.lang.String name)
Updates our representation of the global namespace to reflect an
assignment to a global name in a local scope.
|
(package private) boolean |
FunctionInjector.inliningLowersCost(JSModule fnModule,
Node fnNode,
java.util.Collection<? extends FunctionInjector.Reference> refs,
java.util.Set<java.lang.String> namesToAlias,
boolean isRemovable,
boolean referencesThis)
Determine if inlining the function is likely to reduce the code size.
|
(package private) boolean |
CrossModuleCodeMotion.NamedInfo.isUsedInOrDependencyOfModule(JSModule m) |
(package private) boolean |
AnalyzePrototypeProperties.NameInfo.markReference(JSModule module)
Mark a reference in a given module to this property name, and record
the deepest common module reference.
|
private void |
InlineFunctions.maybeAddFunction(InlineFunctions.Function fn,
JSModule module)
Updates the FunctionState object for the given function.
|
(package private) void |
InlineFunctions.FindCandidatesReferences.maybeAddReference(NodeTraversal t,
InlineFunctions.FunctionState fs,
Node callNode,
JSModule module) |
private boolean |
InlineFunctions.FindCandidatesReferences.maybeAddReferenceUsingMode(NodeTraversal t,
InlineFunctions.FunctionState fs,
Node callNode,
JSModule module,
FunctionInjector.InliningMode mode) |
(package private) boolean |
GlobalNamespace.BuildGlobalNamespace.maybeHandlePrototypePrefix(JSModule module,
Scope scope,
Node n,
Node parent,
java.lang.String name)
Updates our representation of the global namespace to reflect a read
of a global name's longest prefix before the "prototype" property if the
name includes the "prototype" property.
|
(package private) void |
CompilerInput.overrideModule(JSModule module)
Overrides the module to which the input belongs.
|
private void |
ProcessClosurePrimitives.registerAnyProvidedPrefixes(java.lang.String ns,
Node node,
JSModule module)
Registers ProvidedNames for prefix namespaces if they haven't
already been defined.
|
private void |
GlobalNamespace.scanFromNode(GlobalNamespace.BuildGlobalNamespace builder,
JSModule module,
Scope scope,
Node n) |
void |
InlineFunctions.FunctionState.setModule(JSModule module) |
void |
CompilerInput.setModule(JSModule module)
Sets the module to which the input belongs.
|
java.lang.String |
Compiler.toSource(JSModule module)
Converts the parse tree for a module back to JS code.
|
java.lang.String[] |
Compiler.toSourceArray(JSModule module)
Converts the parse tree for each input in a module back to JS code.
|
boolean |
AnalyzePrototypeProperties.PropagateReferences.traverseEdge(AnalyzePrototypeProperties.NameInfo start,
JSModule edge,
AnalyzePrototypeProperties.NameInfo dest) |
private void |
ProcessClosurePrimitives.ProvidedName.updateMinimumModule(JSModule newModule) |
(package private) void |
AbstractCommandLineRunner.writeModuleOutput(java.lang.Appendable out,
JSModule m) |
Modifier and Type | Method and Description |
---|---|
private static void |
JSModuleGraph.addDeps(java.util.Set<JSModule> deps,
JSModule m)
Adds a module's transitive dependencies to a set.
|
private void |
Compiler.checkFirstModule(java.util.List<JSModule> modules)
Verifies that at least one module has been provided and that the first one
has at least one source code input.
|
<T extends SourceFile> |
Compiler.compileModules(java.util.List<T> externs,
java.util.List<JSModule> modules,
CompilerOptions options)
Compiles a list of modules.
|
(package private) void |
AbstractCommandLineRunner.enableTestMode(com.google.common.base.Supplier<java.util.List<SourceFile>> externsSupplier,
com.google.common.base.Supplier<java.util.List<SourceFile>> inputsSupplier,
com.google.common.base.Supplier<java.util.List<JSModule>> modulesSupplier,
com.google.common.base.Function<java.lang.Integer,java.lang.Boolean> exitCodeReceiver)
Put the command line runner into test mode.
|
private static void |
Compiler.fillEmptyModules(java.util.List<JSModule> modules)
Fill any empty modules with a place holder file.
|
private static java.util.List<CompilerInput> |
Compiler.getAllInputsFromModules(java.util.List<JSModule> modules)
Builds a single list of all module inputs.
|
JSModule |
JSModuleGraph.getDeepestCommonDependencyInclusive(java.util.Collection<JSModule> modules)
Returns the deepest common dependency of the given modules.
|
<T extends SourceFile> |
Compiler.initModules(java.util.List<T> externs,
java.util.List<JSModule> modules,
CompilerOptions options)
Initializes the instance state needed for a compile job if the sources
are in modules.
|
private DiagnosticType |
AbstractCommandLineRunner.outputModuleBinaryAndSourceMaps(java.util.List<JSModule> modules,
B options) |
(package private) static java.util.Map<java.lang.String,java.lang.String> |
AbstractCommandLineRunner.parseModuleWrappers(java.util.List<java.lang.String> specs,
java.util.List<JSModule> modules)
Parses module wrapper specifications.
|
(package private) int |
AbstractCommandLineRunner.processResults(Result result,
java.util.List<JSModule> modules,
B options)
Processes the results of the compile job, and returns an error code.
|
Constructor and Description |
---|
AssignmentProperty(Node node,
Var rootVar,
JSModule module) |
AstChange(JSModule module,
Scope scope,
Node node) |
CrossModuleMotionEnvironment(Node sourceNode,
JSModule sourceModule,
Node destinationNode,
JSModule destinationModule,
JSModuleGraph moduleGraph)
Creates a cross module code motion environment.
|
Declaration(JSModule module,
Node node) |
DefinitionSite(Node node,
DefinitionsRemover.Definition definition,
JSModule module,
boolean inGlobalScope,
boolean inExterns) |
GlobalFunction(Node nameNode,
Var var,
JSModule module) |
InjectedInstaller(JSModule module,
java.lang.String installer) |
InstanceofInfo(JSModule module,
CrossModuleCodeMotion.NamedInfo namedInfo) |
JSModuleGraph(JSModule[] modulesInDepOrder)
Creates a module graph from a list of modules in dependency order.
|
LiteralProperty(Node key,
Node value,
Node map,
Node assign,
Var rootVar,
JSModule module) |
ModuleDependenceException(java.lang.String message,
JSModule module,
JSModule dependentModule) |
ProvidedName(java.lang.String namespace,
Node node,
JSModule module,
boolean explicit) |
Ref(JSModule module,
Scope scope,
Node node,
GlobalNamespace.Name name,
GlobalNamespace.Ref.Type type,
int index)
Creates a reference at the current node.
|
Reference(Node callNode,
Scope scope,
JSModule module,
FunctionInjector.InliningMode mode) |
Reference(Node callNode,
Scope scope,
JSModule module,
FunctionInjector.InliningMode mode) |
UseSite(Node node,
Scope scope,
JSModule module) |
Constructor and Description |
---|
JSModuleGraph(java.util.List<JSModule> modulesInDepOrder)
Creates a module graph from a list of modules in dependency order.
|