public interface FlowScope extends StaticTypedScope<JSType>, LatticeElement
| Modifier and Type | Method and Description |
|---|---|
FlowScope |
createChildFlowScope()
Creates a child of this flow scope, to represent an instruction
directly following this one.
|
FlowScope |
createChildFlowScope(StaticTypedScope<JSType> scope)
Creates a child flow scope with the given syntactic scope, which may be required to be a
specific subclass, such as TypedScope.
|
StaticTypedScope<JSType> |
getDeclarationScope()
Returns the underlying TypedScope.
|
void |
inferQualifiedSlot(Node node,
java.lang.String symbol,
JSType bottomType,
JSType inferredType,
boolean declare)
Infer the type of a qualified name.
|
void |
inferSlotType(java.lang.String symbol,
JSType type)
Defines the type of a symbol at this point in the flow.
|
FlowScope |
optimize()
Optimize this scope and return a new FlowScope with faster lookup.
|
getOwnSlot, getParentScope, getSlot, getTypeOfThisgetRootNodeFlowScope createChildFlowScope()
FlowScope createChildFlowScope(StaticTypedScope<JSType> scope)
void inferSlotType(java.lang.String symbol,
JSType type)
java.lang.IllegalArgumentException - If no slot for this symbol exists.void inferQualifiedSlot(Node node, java.lang.String symbol, JSType bottomType, JSType inferredType, boolean declare)
FlowScope optimize()
StaticTypedScope<JSType> getDeclarationScope()
Copyright © 2009-2018 Google. All Rights Reserved.