@Override
public TqlElement visitFieldIn(TqlParser.FieldInContext ctx) {
LOG.debug("Visit field in: " + ctx.getText());
TerminalNode field = ctx.getChild(TerminalNode.class, 0);
TqlElement fieldName = field.accept(this);
// All children which are not terminal values are the needed literal values (see syntax)
LiteralValue[] literalValues = ctx.children.stream().filter(c -> c instanceof TqlParser.LiteralValueContext
|| c instanceof TqlParser.BooleanValueContext || c instanceof ErrorNode).map(c -> (LiteralValue) c.accept(this))
.toArray(LiteralValue[]::new);
FieldInExpression fieldIn = new FieldInExpression(fieldName, literalValues);
LOG.debug("End visit field in: " + ctx.getText());
return fieldIn;
}
TqlExpressionVisitor.java 文件源码
java
阅读 22
收藏 0
点赞 0
评论 0
项目:daikon
作者:
评论列表
文章目录