Class MarlinControllingCExpressionVisitor
java.lang.Object
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<org.prop4j.Node>
org.variantsync.diffdetective.feature.cpp.ControllingCExpressionVisitor
org.variantsync.diffdetective.datasets.predefined.MarlinControllingCExpressionVisitor
- All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<org.prop4j.Node>
,CExpressionVisitor<org.prop4j.Node>
Parses C preprocessor annotations in the marlin firmware.
In contrast to ControllingCExpressionVisitor
,
this class resolves the ENABLED
and DISABLED
macros
that are used in Marlin to check for features being (de-)selected.
- Author:
- Paul Bittner, Benjamin Moosherr
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.prop4j.Node
Visit a parse tree produced byCExpressionParser.primaryExpression()
.Methods inherited from class org.variantsync.diffdetective.feature.cpp.ControllingCExpressionVisitor
abstractToLiteral, recurseOnSingleChild, visitAdditiveExpression, visitAndExpression, visitArgumentExpressionList, visitAssignmentExpression, visitAssignmentOperator, visitConditionalExpression, visitEqualityExpression, visitExclusiveOrExpression, visitExpression, visitInclusiveOrExpression, visitLogicalAndExpression, visitLogicalExpression, visitLogicalOperand, visitLogicalOrExpression, visitMacroExpression, visitMultiplicativeExpression, visitNamespaceExpression, visitRelationalExpression, visitShiftExpression, visitSpecialOperator, visitSpecialOperatorArgument, visitUnaryOperator
Methods inherited from class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor
aggregateResult, defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminal
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.antlr.v4.runtime.tree.ParseTreeVisitor
visit, visitChildren, visitErrorNode, visitTerminal
-
Constructor Details
-
MarlinControllingCExpressionVisitor
public MarlinControllingCExpressionVisitor()
-
-
Method Details
-
visitPrimaryExpression
Description copied from interface:CExpressionVisitor
Visit a parse tree produced byCExpressionParser.primaryExpression()
.- Specified by:
visitPrimaryExpression
in interfaceCExpressionVisitor<org.prop4j.Node>
- Overrides:
visitPrimaryExpression
in classControllingCExpressionVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-