final class InlineProperties extends java.lang.Object implements CompilerPass
Modifier and Type | Class and Description |
---|---|
(package private) class |
InlineProperties.GatherCandidates |
(package private) static class |
InlineProperties.PropertyInfo |
(package private) class |
InlineProperties.ReplaceCandidates |
Modifier and Type | Field and Description |
---|---|
private AbstractCompiler |
compiler |
private static InlineProperties.PropertyInfo |
INVALIDATED |
private java.util.Set<JSType> |
invalidatingTypes |
private java.util.Map<java.lang.String,InlineProperties.PropertyInfo> |
props |
Constructor and Description |
---|
InlineProperties(AbstractCompiler compiler) |
Modifier and Type | Method and Description |
---|---|
private void |
addInvalidatingType(JSType type)
Invalidates the given type, so that no properties on it will be renamed.
|
private void |
buildInvalidatingTypeSet() |
private JSType |
getJSType(Node n)
This method gets the JSType from the Node argument and verifies that it is
present.
|
private void |
invalidateExternProperties() |
private boolean |
isInvalidatingType(JSType type)
Returns true if properties on this type should not be renamed.
|
void |
process(Node externs,
Node root)
Process the JS with root node root.
|
private final AbstractCompiler compiler
private static final InlineProperties.PropertyInfo INVALIDATED
private final java.util.Map<java.lang.String,InlineProperties.PropertyInfo> props
private java.util.Set<JSType> invalidatingTypes
InlineProperties(AbstractCompiler compiler)
private void buildInvalidatingTypeSet()
private void invalidateExternProperties()
private void addInvalidatingType(JSType type)
private boolean isInvalidatingType(JSType type)
private JSType getJSType(Node n)
public void process(Node externs, Node root)
CompilerPass
process
in interface CompilerPass
externs
- Top of external JS treeroot
- Top of JS tree