@Override public BaseNode visitPrimaryName(FEEL_1_1Parser.PrimaryNameContext ctx) { BaseNode name = visit( ctx.qualifiedName() ); if( ctx.parameters() != null ) { ListNode params = (ListNode) visit( ctx.parameters() ); return buildFunctionCall( ctx, name, params ); } else { return name; } }
@Override public BaseNode visitKeyName(FEEL_1_1Parser.KeyNameContext ctx) { return visit(ctx.nameDefinition()); }
@Override public BaseNode visitParametersNamed(FEEL_1_1Parser.ParametersNamedContext ctx) { return visit( ctx.namedParameters() ); }
private BaseNode parse(String input, Map<String, Type> inputTypes) { FEEL_1_1Parser parser = FEELParser.parse(null, input, inputTypes, Collections.emptyMap(), Collections.emptyList(), Collections.emptyList()); ParseTree tree = parser.expression(); ASTBuilderVisitor v = new ASTBuilderVisitor(inputTypes); BaseNode expr = v.visit( tree ); return expr; }
@Override public BaseNode visitUnaryTestsRoot(FEEL_1_1Parser.UnaryTestsRootContext ctx) { return visit(ctx.unaryTests()); }
@Override public BaseNode visitPrimaryParens(FEEL_1_1Parser.PrimaryParensContext ctx) { return visit( ctx.expression() ); }
@Override public BaseNode visitParametersPositional(FEEL_1_1Parser.ParametersPositionalContext ctx) { return visit( ctx.positionalParameters() ); }
@Override public BaseNode visitFormalParameter(FEEL_1_1Parser.FormalParameterContext ctx) { return visit(ctx.nameDefinition()); }
@Override public BaseNode visitCompilation_unit(FEEL_1_1Parser.Compilation_unitContext ctx) { return visit( ctx.expression() ); }
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitIfExpression(FEEL_1_1Parser.IfExpressionContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitFunctionDefinition(FEEL_1_1Parser.FunctionDefinitionContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitContextEntries(FEEL_1_1Parser.ContextEntriesContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitCondAndComp(FEEL_1_1Parser.CondAndCompContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitCompExpressionRel(FEEL_1_1Parser.CompExpressionRelContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitRelExpressionValue(FEEL_1_1Parser.RelExpressionValueContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitExpressionList(FEEL_1_1Parser.ExpressionListContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitAddExpressionMult(FEEL_1_1Parser.AddExpressionMultContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitPrimaryLiteral(FEEL_1_1Parser.PrimaryLiteralContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitPrimaryParens(FEEL_1_1Parser.PrimaryParensContext ctx) { return visitChildren(ctx); } /**
/** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ @Override public T visitNameRef(FEEL_1_1Parser.NameRefContext ctx) { return visitChildren(ctx); } /**