public class HeapConfigurationExtractor extends SeparationLogicBaseListener
| Constructor and Description |
|---|
HeapConfigurationExtractor(Scene scene,
VariableUnification variableUnification,
HeapConfigurationRenaming renaming) |
| Modifier and Type | Method and Description |
|---|---|
void |
enterHeapBody(SeparationLogicParser.HeapBodyContext ctx)
Prepares construction of a new HeapConfiguration corresponding to the
given parse tree.
|
void |
enterPredicateCall(SeparationLogicParser.PredicateCallContext ctx)
Prepares construction of a new nonterminal hyperedge.
|
void |
enterPredicateSymbol(SeparationLogicParser.PredicateSymbolContext ctx)
Collects the nonterminal label of the next hyperedge.
|
void |
enterSelector(SeparationLogicParser.SelectorContext ctx)
Prepares construction of a new pointer.
|
void |
enterVariable(SeparationLogicParser.VariableContext ctx)
Stores the name of the encountered variable.
|
void |
exitHeap(SeparationLogicParser.HeapContext ctx)
Finishes construction of a new HeapConfiguration corresponding to the
given parse tree.
|
void |
exitParameter(SeparationLogicParser.ParameterContext ctx)
Finishes collection of nodes attached to the next nonterminal hyperedge.
|
void |
exitPointer(SeparationLogicParser.PointerContext ctx)
Creates a new pointer and the involved nodes (if necessary).
|
void |
exitPredicateCall(SeparationLogicParser.PredicateCallContext ctx)
Finishes construction of a nonterminal hyperedge.
|
HeapConfiguration |
getHeapConfiguration() |
enterAtom, enterConstant, enterEveryRule, enterFreeVariableDeclaration, enterHeap, enterHeapHead, enterParameter, enterPointer, enterPure, enterSid, enterSidRule, enterSidRuleBody, enterSidRuleHead, enterSpatial, enterType, enterVariableDeclaration, exitAtom, exitConstant, exitEveryRule, exitFreeVariableDeclaration, exitHeapBody, exitHeapHead, exitPredicateSymbol, exitPure, exitSelector, exitSid, exitSidRule, exitSidRuleBody, exitSidRuleHead, exitSpatial, exitType, exitVariable, exitVariableDeclaration, visitErrorNode, visitTerminalpublic HeapConfigurationExtractor(@Nonnull Scene scene, @Nonnull VariableUnification variableUnification, @Nonnull HeapConfigurationRenaming renaming)
scene - The scene containing all global settings.variableUnification - Auxiliary to map variables to heap locations.renaming - Renaming of types and selectors.public HeapConfiguration getHeapConfiguration()
public void enterHeapBody(SeparationLogicParser.HeapBodyContext ctx)
enterHeapBody in interface SeparationLogicListenerenterHeapBody in class SeparationLogicBaseListenerctx - the parse treepublic void exitHeap(SeparationLogicParser.HeapContext ctx)
exitHeap in interface SeparationLogicListenerexitHeap in class SeparationLogicBaseListenerctx - the parse treepublic void enterVariable(SeparationLogicParser.VariableContext ctx)
enterVariable in interface SeparationLogicListenerenterVariable in class SeparationLogicBaseListenerctx - the parse treepublic void enterSelector(SeparationLogicParser.SelectorContext ctx)
enterSelector in interface SeparationLogicListenerenterSelector in class SeparationLogicBaseListenerctx - the parse treepublic void exitPointer(SeparationLogicParser.PointerContext ctx)
exitPointer in interface SeparationLogicListenerexitPointer in class SeparationLogicBaseListenerctx - the parse treepublic void enterPredicateCall(SeparationLogicParser.PredicateCallContext ctx)
enterPredicateCall in interface SeparationLogicListenerenterPredicateCall in class SeparationLogicBaseListenerctx - the parse treepublic void exitPredicateCall(SeparationLogicParser.PredicateCallContext ctx)
exitPredicateCall in interface SeparationLogicListenerexitPredicateCall in class SeparationLogicBaseListenerctx - the parse treepublic void exitParameter(SeparationLogicParser.ParameterContext ctx)
exitParameter in interface SeparationLogicListenerexitParameter in class SeparationLogicBaseListenerctx - the parse treepublic void enterPredicateSymbol(SeparationLogicParser.PredicateSymbolContext ctx)
enterPredicateSymbol in interface SeparationLogicListenerenterPredicateSymbol in class SeparationLogicBaseListenerctx - the parse treeCopyright © 2019. All rights reserved.