Package | Description |
---|---|
com.google.javascript.jscomp |
Provides the core compiler and its public API.
|
Modifier and Type | Field and Description |
---|---|
(package private) java.util.List<ReferenceCollectingCallback.Reference> |
ReferenceCollectingCallback.ReferenceCollection.references |
private java.util.List<ReferenceCollectingCallback.Reference> |
GlobalVarReferenceMap.SourceRefRange.refList |
Modifier and Type | Method and Description |
---|---|
(package private) ReferenceCollectingCallback.Reference |
ReferenceCollectingCallback.Reference.cloneWithNewScope(Scope newScope)
Makes a copy of the current reference using a new Scope instance.
|
(package private) static ReferenceCollectingCallback.Reference |
ReferenceCollectingCallback.Reference.createRefForTest(CompilerInput input)
Creates a variable reference in a given script file name, used in tests.
|
(package private) ReferenceCollectingCallback.Reference |
ReferenceCollectingCallback.ReferenceCollection.getInitializingReference() |
(package private) ReferenceCollectingCallback.Reference |
ReferenceCollectingCallback.ReferenceCollection.getInitializingReferenceForConstants()
Constants are allowed to be defined after their first use.
|
private ReferenceCollectingCallback.Reference |
ReferenceCollectingCallback.ReferenceCollection.getOneAndOnlyAssignment() |
Modifier and Type | Method and Description |
---|---|
java.util.Iterator<ReferenceCollectingCallback.Reference> |
ReferenceCollectingCallback.ReferenceCollection.iterator() |
(package private) java.util.List<ReferenceCollectingCallback.Reference> |
GlobalVarReferenceMap.SourceRefRange.refsAfter()
Note that the returned list is backed by
refList ! |
(package private) java.util.List<ReferenceCollectingCallback.Reference> |
GlobalVarReferenceMap.SourceRefRange.refsBefore()
Note that the returned list is backed by
refList ! |
Modifier and Type | Method and Description |
---|---|
(package private) void |
ReferenceCollectingCallback.ReferenceCollection.add(ReferenceCollectingCallback.Reference reference) |
private void |
ReferenceCollectingCallback.addReference(Var v,
ReferenceCollectingCallback.Reference reference) |
private boolean |
InlineVariables.InliningBehavior.canInline(ReferenceCollectingCallback.Reference declaration,
ReferenceCollectingCallback.Reference initialization,
ReferenceCollectingCallback.Reference reference) |
private boolean |
InlineVariables.InliningBehavior.canMoveModerately(ReferenceCollectingCallback.Reference initialization,
ReferenceCollectingCallback.Reference reference)
If the value of a variable is not constant, then it may read or modify
state.
|
private void |
InlineObjectLiterals.InliningBehavior.fillInitialValues(ReferenceCollectingCallback.Reference init,
java.util.Map<java.lang.String,Node> initvals)
Populates a map of key names -> initial assigned values.
|
private JSModule |
CrossModuleCodeMotion.getModule(ReferenceCollectingCallback.Reference ref) |
(package private) JSModule |
CollapseProperties.getRefModule(ReferenceCollectingCallback.Reference ref) |
private void |
InlineVariables.InliningBehavior.inline(Var v,
ReferenceCollectingCallback.Reference decl,
ReferenceCollectingCallback.Reference init,
ReferenceCollectingCallback.Reference ref)
Do the actual work of inlining a single declaration into a single
reference.
|
private void |
InlineVariables.InliningBehavior.inlineValue(Var v,
ReferenceCollectingCallback.Reference ref,
Node value)
Replace the given reference with the given value node.
|
private boolean |
InlineVariables.InliningBehavior.isValidDeclaration(ReferenceCollectingCallback.Reference declaration) |
private boolean |
InlineVariables.InliningBehavior.isValidInitialization(ReferenceCollectingCallback.Reference initialization) |
private boolean |
InlineVariables.InliningBehavior.isValidReference(ReferenceCollectingCallback.Reference reference) |
private boolean |
CrossModuleCodeMotion.maybeProcessDeclaration(ReferenceCollectingCallback collector,
ReferenceCollectingCallback.Reference ref,
CrossModuleCodeMotion.NamedInfo info)
Determines whether the given NAME node belongs to a declaration that
can be moved across modules.
|
private void |
CrossModuleCodeMotion.processRead(ReferenceCollectingCallback.Reference ref,
CrossModuleCodeMotion.NamedInfo info)
Process the reads to named variables
|
private void |
CrossModuleCodeMotion.processReference(ReferenceCollectingCallback collector,
ReferenceCollectingCallback.Reference ref,
CrossModuleCodeMotion.NamedInfo info) |
private void |
InlineVariables.InliningBehavior.removeDeclaration(ReferenceCollectingCallback.Reference decl)
Remove the given VAR declaration.
|
private void |
InlineObjectLiterals.InliningBehavior.replaceAssignmentExpression(Var v,
ReferenceCollectingCallback.Reference ref,
java.util.Map<java.lang.String,java.lang.String> varmap)
Replaces an assignment like x = {...} with t1=a,t2=b,t3=c,true.
|
private void |
InlineObjectLiterals.InliningBehavior.splitObject(Var v,
ReferenceCollectingCallback.Reference init,
ReferenceCollectingCallback.ReferenceCollection referenceInfo)
Splits up the object literal into individual variables, and
updates all uses.
|
Modifier and Type | Method and Description |
---|---|
private void |
VariableReferenceCheck.ReferenceCheckingBehavior.checkShadowParam(Var v,
Scope functionScope,
java.util.List<ReferenceCollectingCallback.Reference> references) |
private void |
VariableReferenceCheck.ReferenceCheckingBehavior.checkVar(Var v,
java.util.List<ReferenceCollectingCallback.Reference> references)
If the variable is declared more than once in a basic block, generate a
warning.
|
private GlobalVarReferenceMap.SourceRefRange |
GlobalVarReferenceMap.findSourceRefRange(java.util.List<ReferenceCollectingCallback.Reference> refList,
InputId inputId)
Finds the range of references associated to
sourceName . |
private void |
InlineVariables.InliningBehavior.inlineDeclaredConstant(Var v,
Node value,
java.util.List<ReferenceCollectingCallback.Reference> refSet)
Inline a declared constant.
|
private void |
InlineVariables.InliningBehavior.inlineWellDefinedVariable(Var v,
Node value,
java.util.List<ReferenceCollectingCallback.Reference> refSet)
Inline an immutable variable into all of its references.
|
private boolean |
InlineObjectLiterals.InliningBehavior.isInlinableObject(java.util.List<ReferenceCollectingCallback.Reference> refs)
Counts the number of direct (full) references to an object.
|
private boolean |
InlineVariables.InliningBehavior.isStringWorthInlining(Var var,
java.util.List<ReferenceCollectingCallback.Reference> refs)
Compute whether the given string is worth inlining.
|
Constructor and Description |
---|
SourceRefRange(java.util.List<ReferenceCollectingCallback.Reference> refList,
int lastBefore,
int firstAfter) |