@Override public BaseNode visitParametersEmpty(FEEL_1_1Parser.ParametersEmptyContext ctx) { return ASTBuilderFactory.newListNode( ctx, new ArrayList<>() ); }
@Override public BaseNode visitFormalParameters(FEEL_1_1Parser.FormalParametersContext ctx) { List<BaseNode> list = new ArrayList<>(); for ( FEEL_1_1Parser.FormalParameterContext fpc : ctx.formalParameter() ) { list.add( visit( fpc ) ); } return ASTBuilderFactory.newListNode( ctx, list ); }
@Override public BaseNode visitNamedParameters(FEEL_1_1Parser.NamedParametersContext ctx) { List<BaseNode> params = new ArrayList<>(); for ( FEEL_1_1Parser.NamedParameterContext npc : ctx.namedParameter() ) { params.add( visit( npc ) ); } return ASTBuilderFactory.newListNode( ctx, params ); }
@Override public BaseNode visitIterationContexts(FEEL_1_1Parser.IterationContextsContext ctx) { ArrayList<BaseNode> ctxs = new ArrayList<>(); for ( FEEL_1_1Parser.IterationContextContext ic : ctx.iterationContext() ) { ctxs.add( visit( ic ) ); } return ASTBuilderFactory.newListNode( ctx, ctxs ); }
@Override public BaseNode visitPositionalParameters(FEEL_1_1Parser.PositionalParametersContext ctx) { List<BaseNode> params = new ArrayList<>(); for ( FEEL_1_1Parser.ExpressionContext ec : ctx.expression() ) { params.add( visit( ec ) ); } return ASTBuilderFactory.newListNode( ctx, params ); }
public UnaryTestListNode(ParserRuleContext ctx, List<BaseNode> elements, State state) { super(ctx); this.elements = elements; this.state = state; if (isNegated()) { notNode = ASTBuilderFactory.newUnaryTestNode(ctx, "not", ASTBuilderFactory.newListNode(ctx, elements)); } }
@Override public BaseNode visitList(FEEL_1_1Parser.ListContext ctx) { if ( ctx.expressionList() == null ) { // empty list -> children are [ ] return ASTBuilderFactory.newListNode( ctx, new ArrayList<>() ); } else { // returns actual list return visit( ctx.expressionList() ); } }
@Override public BaseNode visitExpressionList(FEEL_1_1Parser.ExpressionListContext ctx) { List<BaseNode> exprs = new ArrayList<>(); for ( int i = 0; i < ctx.getChildCount(); i++ ) { if ( ctx.getChild( i ) instanceof FEEL_1_1Parser.ExpressionContext ) { exprs.add( visit( ctx.getChild( i ) ) ); } } return ASTBuilderFactory.newListNode( ctx, exprs ); }
@Override public BaseNode visitContext(FEEL_1_1Parser.ContextContext ctx) { ListNode list = ctx.contextEntries() != null ? (ListNode) visit( ctx.contextEntries() ) : ASTBuilderFactory.newListNode( ctx, new ArrayList<>() ); return ASTBuilderFactory.newContextNode( ctx, list ); }
@Override public BaseNode visitPositiveUnaryTests(FEEL_1_1Parser.PositiveUnaryTestsContext ctx) { List<BaseNode> tests = new ArrayList<>(); for ( int i = 0; i < ctx.getChildCount(); i++ ) { if ( ctx.getChild( i ) instanceof FEEL_1_1Parser.PositiveUnaryTestContext || ctx.getChild( i ) instanceof FEEL_1_1Parser.PrimaryContext) { tests.add( visit( ctx.getChild( i ) ) ); } } return ASTBuilderFactory.newListNode( ctx, tests ); }
@Override public BaseNode visitContextEntries(FEEL_1_1Parser.ContextEntriesContext ctx) { List<BaseNode> nodes = new ArrayList<>(); scopeHelper.pushScope(); for ( FEEL_1_1Parser.ContextEntryContext c : ctx.contextEntry() ) { ContextEntryNode visited = (ContextEntryNode) visit( c ); // forced cast similarly to visitFunctionDefinition() method if (visited != null) { nodes.add( visited ); scopeHelper.addType( visited.getName().getText() , visited.getResultType() ); } } scopeHelper.popScope(); return ASTBuilderFactory.newListNode( ctx, nodes ); }