Package org.rumbledb.compiler
Class ExecutionModeVisitor
java.lang.Object
org.rumbledb.expressions.AbstractNodeVisitor<StaticContext>
org.rumbledb.compiler.ExecutionModeVisitor
Static context visitor implements a multi-pass algorithm that enables function hoisting
-
Method Summary
Modifier and TypeMethodDescriptionprotected StaticContext
defaultAction
(Node node, StaticContext argument) visitArrayLookupExpression
(ArrayLookupExpression expression, StaticContext argument) visitArrayUnboxingExpression
(ArrayUnboxingExpression expression, StaticContext argument) visitCommaExpression
(CommaExpression expression, StaticContext argument) visitConditionalExpression
(ConditionalExpression conditionalExpression, StaticContext argument) visitCountClause
(CountClause expression, StaticContext argument) visitDynamicFunctionCallExpression
(DynamicFunctionCallExpression expression, StaticContext argument) visitExitStatement
(ExitStatement exitStatement, StaticContext argument) visitFilterExpression
(FilterExpression expression, StaticContext argument) visitFlowrExpression
(FlworExpression expression, StaticContext argument) visitFlowrStatement
(FlowrStatement statement, StaticContext argument) visitForClause
(ForClause clause, StaticContext argument) visitFunctionCall
(FunctionCallExpression expression, StaticContext argument) visitFunctionDeclaration
(FunctionDeclaration declaration, StaticContext argument) visitGroupByClause
(GroupByClause clause, StaticContext argument) visitInlineFunctionExpr
(InlineFunctionExpression expression, StaticContext argument) visitLetClause
(LetClause clause, StaticContext argument) visitLibraryModule
(LibraryModule libraryModule, StaticContext argument) visitMainModule
(MainModule mainModule, StaticContext argument) visitObjectLookupExpression
(ObjectLookupExpression expression, StaticContext argument) visitOrderByClause
(OrderByClause clause, StaticContext argument) visitPostfixLookupExpression
(PostfixLookupExpression expression, StaticContext argument) visitProgram
(Program program, StaticContext argument) visitProlog
(Prolog prolog, StaticContext argument) visitRangeExpr
(RangeExpression rangeExpression, StaticContext argument) visitReturnClause
(ReturnClause expression, StaticContext argument) visitReturnStatementClause
(ReturnStatementClause statement, StaticContext argument) visitSimpleMapExpr
(SimpleMapExpression simpleMapExpression, StaticContext argument) visitSlashExpr
(SlashExpr slashExpr, StaticContext argument) visitStatementsAndExpr
(StatementsAndExpr statementsAndExpr, StaticContext argument) visitStatementsAndOptionalExpr
(StatementsAndOptionalExpr statementsAndOptionalExpr, StaticContext argument) visitSwitchExpression
(SwitchExpression expression, StaticContext argument) visitTransformExpression
(TransformExpression expression, StaticContext argument) visitTreatExpression
(TreatExpression expression, StaticContext argument) visitTypeSwitchExpression
(TypeSwitchExpression expression, StaticContext argument) visitValidateTypeExpression
(ValidateTypeExpression expression, StaticContext argument) visitVariableDeclaration
(VariableDeclaration variableDeclaration, StaticContext argument) visitVariableReference
(VariableReferenceExpression expression, StaticContext argument) visitWhereClause
(WhereClause clause, StaticContext argument) Methods inherited from class org.rumbledb.expressions.AbstractNodeVisitor
visit, visitAdditiveExpr, visitAndExpr, visitAppendExpression, visitApplyStatement, visitArrayConstructor, visitAssignStatement, visitAttributeNode, visitAttributeNodeContent, visitBlockExpr, visitBlockStatement, visitBoolean, visitBreakStatement, visitCastableExpression, visitCastExpression, visitCommaVariableDeclStatement, visitComparisonExpr, visitComputedAttributeConstructor, visitComputedElementConstructor, visitConditionalStatement, visitContextExpr, visitContinueStatement, visitCreateCollectionExpression, visitDecimal, visitDeleteExpression, visitDeleteIndexFromCollectionExpression, visitDeleteSearchFromCollectionExpression, visitDescendants, visitDirElemConstructor, visitDocumentNodeConstructor, visitDouble, visitEditCollectionExpression, visitInsertExpression, visitInsertIndexIntoCollectionExpression, visitInsertSearchIntoCollectionExpression, visitInstanceOfExpression, visitInteger, visitIsStaticallyExpr, visitMultiplicativeExpr, visitNamedFunctionRef, visitNodeComparisonExpr, visitNotExpr, visitNull, visitObjectConstructor, visitOrExpr, visitRenameExpression, visitReplaceExpression, visitStepExpr, visitString, visitStringConcatExpr, visitSwitchStatement, visitTextNode, visitTextNodeConstructor, visitTruncateCollectionExpression, visitTryCatchExpression, visitTryCatchStatement, visitTypeDeclaration, visitTypeSwitchStatement, visitUnaryExpr, visitUnaryLookupExpression, visitVariableDeclStatement, visitWhileStatement
-
Method Details
-
DATAFRAMEifConfigurationAllows
-
defaultAction
- Overrides:
defaultAction
in classAbstractNodeVisitor<StaticContext>
-
visitMainModule
- Overrides:
visitMainModule
in classAbstractNodeVisitor<StaticContext>
-
visitLibraryModule
- Overrides:
visitLibraryModule
in classAbstractNodeVisitor<StaticContext>
-
visitVariableReference
public StaticContext visitVariableReference(VariableReferenceExpression expression, StaticContext argument) - Overrides:
visitVariableReference
in classAbstractNodeVisitor<StaticContext>
-
visitFunctionDeclaration
public StaticContext visitFunctionDeclaration(FunctionDeclaration declaration, StaticContext argument) - Overrides:
visitFunctionDeclaration
in classAbstractNodeVisitor<StaticContext>
-
visitInlineFunctionExpr
public StaticContext visitInlineFunctionExpr(InlineFunctionExpression expression, StaticContext argument) - Overrides:
visitInlineFunctionExpr
in classAbstractNodeVisitor<StaticContext>
-
visitFunctionCall
- Overrides:
visitFunctionCall
in classAbstractNodeVisitor<StaticContext>
-
visitReturnClause
- Overrides:
visitReturnClause
in classAbstractNodeVisitor<StaticContext>
-
visitFlowrExpression
- Overrides:
visitFlowrExpression
in classAbstractNodeVisitor<StaticContext>
-
visitForClause
- Overrides:
visitForClause
in classAbstractNodeVisitor<StaticContext>
-
visitLetClause
- Overrides:
visitLetClause
in classAbstractNodeVisitor<StaticContext>
-
visitGroupByClause
- Overrides:
visitGroupByClause
in classAbstractNodeVisitor<StaticContext>
-
visitCountClause
- Overrides:
visitCountClause
in classAbstractNodeVisitor<StaticContext>
-
visitTypeSwitchExpression
public StaticContext visitTypeSwitchExpression(TypeSwitchExpression expression, StaticContext argument) - Overrides:
visitTypeSwitchExpression
in classAbstractNodeVisitor<StaticContext>
-
visitSwitchExpression
- Overrides:
visitSwitchExpression
in classAbstractNodeVisitor<StaticContext>
-
visitVariableDeclaration
public StaticContext visitVariableDeclaration(VariableDeclaration variableDeclaration, StaticContext argument) - Overrides:
visitVariableDeclaration
in classAbstractNodeVisitor<StaticContext>
-
visitTransformExpression
public StaticContext visitTransformExpression(TransformExpression expression, StaticContext argument) - Overrides:
visitTransformExpression
in classAbstractNodeVisitor<StaticContext>
-
visitProlog
- Overrides:
visitProlog
in classAbstractNodeVisitor<StaticContext>
-
visitProgram
- Overrides:
visitProgram
in classAbstractNodeVisitor<StaticContext>
-
visitValidateTypeExpression
public StaticContext visitValidateTypeExpression(ValidateTypeExpression expression, StaticContext argument) - Overrides:
visitValidateTypeExpression
in classAbstractNodeVisitor<StaticContext>
-
visitRangeExpr
- Overrides:
visitRangeExpr
in classAbstractNodeVisitor<StaticContext>
-
visitSimpleMapExpr
public StaticContext visitSimpleMapExpr(SimpleMapExpression simpleMapExpression, StaticContext argument) - Overrides:
visitSimpleMapExpr
in classAbstractNodeVisitor<StaticContext>
-
visitConditionalExpression
public StaticContext visitConditionalExpression(ConditionalExpression conditionalExpression, StaticContext argument) - Overrides:
visitConditionalExpression
in classAbstractNodeVisitor<StaticContext>
-
visitCommaExpression
- Overrides:
visitCommaExpression
in classAbstractNodeVisitor<StaticContext>
-
visitOrderByClause
- Overrides:
visitOrderByClause
in classAbstractNodeVisitor<StaticContext>
-
visitWhereClause
- Overrides:
visitWhereClause
in classAbstractNodeVisitor<StaticContext>
-
visitArrayUnboxingExpression
public StaticContext visitArrayUnboxingExpression(ArrayUnboxingExpression expression, StaticContext argument) - Overrides:
visitArrayUnboxingExpression
in classAbstractNodeVisitor<StaticContext>
-
visitArrayLookupExpression
public StaticContext visitArrayLookupExpression(ArrayLookupExpression expression, StaticContext argument) - Overrides:
visitArrayLookupExpression
in classAbstractNodeVisitor<StaticContext>
-
visitObjectLookupExpression
public StaticContext visitObjectLookupExpression(ObjectLookupExpression expression, StaticContext argument) - Overrides:
visitObjectLookupExpression
in classAbstractNodeVisitor<StaticContext>
-
visitPostfixLookupExpression
public StaticContext visitPostfixLookupExpression(PostfixLookupExpression expression, StaticContext argument) - Overrides:
visitPostfixLookupExpression
in classAbstractNodeVisitor<StaticContext>
-
visitFilterExpression
- Overrides:
visitFilterExpression
in classAbstractNodeVisitor<StaticContext>
-
visitDynamicFunctionCallExpression
public StaticContext visitDynamicFunctionCallExpression(DynamicFunctionCallExpression expression, StaticContext argument) - Overrides:
visitDynamicFunctionCallExpression
in classAbstractNodeVisitor<StaticContext>
-
visitTreatExpression
- Overrides:
visitTreatExpression
in classAbstractNodeVisitor<StaticContext>
-
visitReturnStatementClause
public StaticContext visitReturnStatementClause(ReturnStatementClause statement, StaticContext argument) - Overrides:
visitReturnStatementClause
in classAbstractNodeVisitor<StaticContext>
-
visitFlowrStatement
- Overrides:
visitFlowrStatement
in classAbstractNodeVisitor<StaticContext>
-
visitStatementsAndOptionalExpr
public StaticContext visitStatementsAndOptionalExpr(StatementsAndOptionalExpr statementsAndOptionalExpr, StaticContext argument) - Overrides:
visitStatementsAndOptionalExpr
in classAbstractNodeVisitor<StaticContext>
-
visitStatementsAndExpr
public StaticContext visitStatementsAndExpr(StatementsAndExpr statementsAndExpr, StaticContext argument) - Overrides:
visitStatementsAndExpr
in classAbstractNodeVisitor<StaticContext>
-
visitSlashExpr
- Overrides:
visitSlashExpr
in classAbstractNodeVisitor<StaticContext>
-
visitExitStatement
- Overrides:
visitExitStatement
in classAbstractNodeVisitor<StaticContext>
-