首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问MVEL ASTNode信息

访问MVEL ASTNode信息
EN

Stack Overflow用户
提问于 2021-09-04 09:31:50
回答 1查看 25关注 0票数 0

编译MVEL表达式后,我可以访问最上面的ASTNode。

代码语言:javascript
复制
ExpressionCompiler compiler = new ExpressionCompiler(<expression>, true);
ASTNode node = compiler.compile().getFirstNode();

但是,我希望拥有对ASTNode信息的完全访问权限,包括它的左子节点和右子节点。

代码语言:javascript
复制
ASTNode left = node.getLeftNode();
ASTNode right = node.getRightNode();
...

有办法做到这一点吗?

EN

回答 1

Stack Overflow用户

发布于 2021-09-05 02:18:14

如果表达式具有二元运算符,例如(a + b),则相应的ASTNode类型为BineryOperation。因此,可以使用以下代码来解决此问题:

代码语言:javascript
复制
ExpressionCompiler compiler = new ExpressionCompiler("a + b", true);
ASTNode node = compiler.compile().getFirstNode();
BinaryOperation biOptNode= (BinaryOperation)node;
ASTNode left = biOptNode.getLeftNode();
ASTNode right = biOptNode.getRightNode();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69054068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档