Class ClosureReverseAbstractInterpreter
java.lang.Object
com.google.javascript.jscomp.type.ChainableReverseAbstractInterpreter
com.google.javascript.jscomp.type.ClosureReverseAbstractInterpreter
- All Implemented Interfaces:
ReverseAbstractInterpreter
A reverse abstract interpreter (RAI) for specific closure patterns such as
goog.isDef
.-
Field Summary
Fields inherited from class com.google.javascript.jscomp.type.ChainableReverseAbstractInterpreter
convention
-
Constructor Summary
ConstructorDescriptionClosureReverseAbstractInterpreter
(CodingConvention convention, JSTypeRegistry typeRegistry) Creates aClosureReverseAbstractInterpreter
. -
Method Summary
Modifier and TypeMethodDescriptiongetPreciserScopeKnowingConditionOutcome
(Node condition, FlowScope blindScope, boolean outcome) Calculates a precise version of the scope knowing the outcome of the condition.Methods inherited from class com.google.javascript.jscomp.type.ChainableReverseAbstractInterpreter
append, declareNameInScope, firstPreciserScopeKnowingConditionOutcome, getFirst, getRestrictedWithoutNull, getRestrictedWithoutUndefined, getTypeIfRefinable, nextPreciserScopeKnowingConditionOutcome
-
Constructor Details
-
ClosureReverseAbstractInterpreter
Creates aClosureReverseAbstractInterpreter
.
-
-
Method Details
-
getPreciserScopeKnowingConditionOutcome
public FlowScope getPreciserScopeKnowingConditionOutcome(Node condition, FlowScope blindScope, boolean outcome) Description copied from interface:ReverseAbstractInterpreter
Calculates a precise version of the scope knowing the outcome of the condition.- Parameters:
condition
- the condition's expressionblindScope
- the scope without knowledge about the outcome of the conditionoutcome
- the outcome of the condition
-