public class GrammarExtractor extends SeparationLogicBaseListener
| Modifier and Type | Method and Description |
|---|---|
void |
enterPredicateCall(SeparationLogicParser.PredicateCallContext ctx)
Prepares the creation of a new nonterminal edge corresponding to a predicate call.
|
void |
enterPredicateSymbol(SeparationLogicParser.PredicateSymbolContext ctx)
Treats predicate symbols both on the left-hand side of rules
and in the form of predicate calls.
|
void |
enterPure(SeparationLogicParser.PureContext ctx)
Enter a parse tree produced by
SeparationLogicParser.pure(). |
void |
enterSelector(SeparationLogicParser.SelectorContext ctx)
Saves the previously encountered variable as the left-hand side of a
points-to assertion and stores the encountered selector.
|
void |
enterSid(SeparationLogicParser.SidContext ctx)
Sets up creation of a new grammar.
|
void |
enterSidRule(SeparationLogicParser.SidRuleContext ctx)
Prepares creation of rules with a new left-hand side.
|
void |
enterSidRuleBody(SeparationLogicParser.SidRuleBodyContext ctx)
Prepares creation of a new heap configuration as a right-hand side of a grammar rule.
|
void |
enterSidRuleHead(SeparationLogicParser.SidRuleHeadContext ctx)
Prepares collection of the names and types of variables corresponding to external nodes.
|
void |
enterType(SeparationLogicParser.TypeContext ctx)
Retrieves the type of a variable declaration.
|
void |
enterVariable(SeparationLogicParser.VariableContext ctx)
Retrieves the name of a variable.
|
void |
exitParameter(SeparationLogicParser.ParameterContext ctx)
Adds a parameter to the list of parameters of the currently considered predicate call.
|
void |
exitPointer(SeparationLogicParser.PointerContext ctx)
Adds a new pointer.
|
void |
exitPredicateCall(SeparationLogicParser.PredicateCallContext ctx)
Finishes the creation of a new nonterminal edge corresponding to a predicate call.
|
void |
exitSid(SeparationLogicParser.SidContext ctx)
Finishes created of a grammar from the given SID parse tree.
|
void |
exitSidRule(SeparationLogicParser.SidRuleContext ctx)
Finishes creation of rules with the current left-hand side.
|
void |
exitSidRuleBody(SeparationLogicParser.SidRuleBodyContext ctx)
Finishes creation of heap configuration serving as the right-hand side of a grammar rule.
|
void |
exitVariableDeclaration(SeparationLogicParser.VariableDeclarationContext ctx)
Finishes variable declaration.
|
Grammar |
getGrammar() |
enterAtom, enterConstant, enterEveryRule, enterFreeVariableDeclaration, enterHeap, enterHeapBody, enterHeapHead, enterParameter, enterPointer, enterSpatial, enterVariableDeclaration, exitAtom, exitConstant, exitEveryRule, exitFreeVariableDeclaration, exitHeap, exitHeapBody, exitHeapHead, exitPredicateSymbol, exitPure, exitSelector, exitSidRuleHead, exitSpatial, exitType, exitVariable, visitErrorNode, visitTerminalpublic Grammar getGrammar()
public void enterSid(SeparationLogicParser.SidContext ctx)
enterSid in interface SeparationLogicListenerenterSid in class SeparationLogicBaseListenerctx - the parse treepublic void exitSid(SeparationLogicParser.SidContext ctx)
exitSid in interface SeparationLogicListenerexitSid in class SeparationLogicBaseListenerctx - the parse treepublic void enterSidRule(SeparationLogicParser.SidRuleContext ctx)
enterSidRule in interface SeparationLogicListenerenterSidRule in class SeparationLogicBaseListenerctx - the parse treepublic void exitSidRule(SeparationLogicParser.SidRuleContext ctx)
exitSidRule in interface SeparationLogicListenerexitSidRule in class SeparationLogicBaseListenerctx - the parse treepublic void enterSidRuleHead(SeparationLogicParser.SidRuleHeadContext ctx)
enterSidRuleHead in interface SeparationLogicListenerenterSidRuleHead in class SeparationLogicBaseListenerctx - the parse treepublic void enterSidRuleBody(SeparationLogicParser.SidRuleBodyContext ctx)
enterSidRuleBody in interface SeparationLogicListenerenterSidRuleBody in class SeparationLogicBaseListenerctx - the parse treepublic void exitSidRuleBody(SeparationLogicParser.SidRuleBodyContext ctx)
exitSidRuleBody in interface SeparationLogicListenerexitSidRuleBody in class SeparationLogicBaseListenerctx - the parse treepublic void exitVariableDeclaration(SeparationLogicParser.VariableDeclarationContext ctx)
exitVariableDeclaration in interface SeparationLogicListenerexitVariableDeclaration in class SeparationLogicBaseListenerctx - the parse treepublic void enterVariable(SeparationLogicParser.VariableContext ctx)
enterVariable in interface SeparationLogicListenerenterVariable in class SeparationLogicBaseListenerctx - the parse treepublic void enterType(SeparationLogicParser.TypeContext ctx)
enterType in interface SeparationLogicListenerenterType 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 enterPure(SeparationLogicParser.PureContext ctx)
SeparationLogicBaseListenerSeparationLogicParser.pure().
The default implementation does nothing.
enterPure in interface SeparationLogicListenerenterPure 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.