Class SemanticReverseAbstractInterpreter
java.lang.Object
com.google.javascript.jscomp.type.ChainableReverseAbstractInterpreter
com.google.javascript.jscomp.type.SemanticReverseAbstractInterpreter
- All Implemented Interfaces:
ReverseAbstractInterpreter
A reverse abstract interpreter using the semantics of the JavaScript language as a means to
reverse interpret computations. This interpreter expects the parse tree inputs to be typed.
-
Constructor Summary
ConstructorsConstructorDescriptionSemanticReverseAbstractInterpreter(JSTypeRegistry typeRegistry) Creates a semantic reverse abstract interpreter. -
Method Summary
Modifier and TypeMethodDescriptiongetPreciserScopeKnowingConditionOutcome(Node condition, FlowScope blindScope, Outcome 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, getTypeIfRefinable, nextPreciserScopeKnowingConditionOutcome
-
Constructor Details
-
SemanticReverseAbstractInterpreter
Creates a semantic reverse abstract interpreter.
-
-
Method Details
-
getPreciserScopeKnowingConditionOutcome
@CheckReturnValue public FlowScope getPreciserScopeKnowingConditionOutcome(Node condition, FlowScope blindScope, Outcome outcome) Description copied from interface:ReverseAbstractInterpreterCalculates 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
-