腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
有没有
办法
编辑
Antlr
ParseTree
上
的
节点
?
、
我正在递归地遍历
antlr
解析树,并且希望在树中
编辑
TerminalNodes
的
文本。我希望能够为任何
ParseTree
做这件事,我不想为我可能遇到
的
每个
ParseTree
编写一个特定
的
访问者。我浏览了权威
的
ANTLR
4参考资料,发现
antlr
对树重写没有任何直接支持。我正在寻找任何可能
的
变通
办法
或替代解决方案。private void editTree(
ParseTree
浏览 19
提问于2019-02-19
得票数 0
回答已采纳
2
回答
根据子
节点
在解析树中查找特定
节点
、
、
为了自动化C#代码
的
安全审查,我希望从具有[HttpPost]属性但没有[ValidateAntiForgeryToken]属性
的
控制器中检索所有方法。我正在使用
ANTLR
来获取C#代码
的
ParseTree
。当我拥有它时,获取有HttpPost子
节点
但没有ValidateAntiForgeryToken子
节点
的
最好方法是什么?我尝试过XPath,但似乎只支持XPath
的
一个子集。我正在考虑将解析树转换为XML,并在其
上</em
浏览 0
提问于2018-01-02
得票数 0
1
回答
对于ParserInterpreter,所有替代号码都填充为1或0
给定一个
ANTLR
4解析树,我希望能够了解在树
的
每个
节点
上
使用了哪个规则和哪个替代方案,而不必让
ANTLR
为我生成一个完整
的
库。我遵循解释器
上
的
示例,它允许我从ParseTrees获取RuleContexts和规则,因此我通常可以获得
ParseTree
中使用
的
规则。但是,用于匹配
的
规则
的
altNumber/alternative要么为空,要么始终为零,因此我无法确定他们使
浏览 1
提问于2021-10-14
得票数 1
1
回答
解析树
节点
坐标?
、
、
我使用
Antlr
4 4.9.2 我需要在分析
的
不同阶段执行同一解析树
的
多次传递。我
的
应用程序处理
的
一些文件非常大,因此我希望能够避免将解析树保存在内存中,并且每次都能够重新生成不同
的
解析树实例。我面临
的
挑战是,我需要一种方法来(a)比较
节点
和(b)快速访问使用不同
的
等效解析树实例
的
节点
。例如,下面的伪代码生成两个分别表示相同文件
的
解析树实例(因此,解析树及其
节点
是
浏览 2
提问于2021-12-07
得票数 1
回答已采纳
1
回答
有
办法
向
ParseTree
解析器提供
antlr
4包装器吗?
、
、
有
办法
向
ParseTree
解析器提供
antlr
4包装器吗?在
antlr
2中,我可以设置自定义AST
节点
类型:我知道在
antlr
4中没有AST,但是我想向解析树中
的
所有
节点
添加一些功能我不希望将每个
节点
都转换为YYYContext来处理它。相反,我希望为所有具有所有这些方法
的
解析树中
的
节点<
浏览 4
提问于2014-09-09
得票数 1
回答已采纳
1
回答
antlr
4:创建ParseTrees时忽略多余
的
令牌
我正在用
ANTLR
4为实时语言PEARL开发一个编译器。
有没有
办法
告诉
ANTLR
忽略这些类型
的
令牌?
浏览 4
提问于2013-03-03
得票数 6
回答已采纳
1
回答
Antlr
4 c++从
ParseTree
获取规则名称*
、
在遍历创建
的
解析树时,我需要从当前正在遍历
的
antlr
4:tree:
ParseTree
*
节点
获取解析器规则
的
名称。例如,如果语法是:(暂时忽略lexer规则),t是一些规则,我需要检查
节点
(类型:
ParseTree
*)是否与规则t相对应。 谢谢
浏览 3
提问于2021-02-17
得票数 1
回答已采纳
2
回答
ANTLR
4。如何检测
ParseTree
节点
类型?
我能够从我
的
解析器类中获得org.
antlr
.v4.runtime.tree.
ParseTree
类
的
对象。现在,我想访问每个
节点
,并根据树
节点
类型生成自定义输出。如何在
ANTLR
4中做到这一点?没有像getTreeNodeType()这样
的
方法。
浏览 4
提问于2013-11-15
得票数 1
1
回答
ANTLR
4:带有
ParseTree
的
getFirstChildWithType
我一直在使用
ANTLR
4,试图转换一个
ANTLR
3项目。myFunction(ctx.getChild(0))final
ParseTree
classNameElement = (
ParseTree
浏览 37
提问于2018-07-01
得票数 0
回答已采纳
1
回答
Antlr
4生成java代码访问者模式混淆
、
、
当
antlr
为访问者模式生成java代码时,我们将得到一个基本
的
访问者类。public T visitProgram(YxParser.ProgramContext ctx) { return visitChildren(ctx); }我有一个名为ASTBuilder
的
派生类因此,当我需要使用ASTBuilder访问
ParseTree
节点
时,我将调用函数
ParseTree
parseTreeRoot = parser.program();方法,但是ASTB
浏览 31
提问于2022-10-14
得票数 -1
回答已采纳
2
回答
修改解析树
、
、
我有一个适用于
的
ANTLR
ParseTree
。示例: 我
的
目标是
编辑
这棵树,这样我就可以删除中间
的
所有(booleanExpression、predicated、valueExpression、primaryExpression )
节点
。我不想触及语法,因为它是官方
的
源码。 那么我该怎么做呢?谢谢
浏览 5
提问于2021-03-18
得票数 0
1
回答
简化编译器
的
类结构
、
、
、
因此,我正在用java编写一个编译器,将我自己
的
语言翻译成CUDA语言。为此,我用
ANTLR
4编写了一个语法,获得了一个词法分析器和解析器。现在,
ANTLR
为我提供了一个具有可实现方法
的
侦听器,这些方法基本
上
是抽象解析树中
的
节点
。然后,我根据这个
节点
上
的
令牌,用我想要生成
的
代码装饰这个树。我
的
问题是这个CUDAEmitter类中有45个方法和830行代码。我正在努力弄清楚如何组织和
浏览 1
提问于2013-05-22
得票数 0
1
回答
Antlr
4在堆上分配
ParseTree
、
、
、
antlr
4::tree::
ParseTree
*get_ast(std::string &filename) { stream.open(filenametokens(&lexer);
antlr
4::tree::
ParseTree
*tree = parser.program();return tree;但是当使用返回值时,似乎已经清除了所指向
的
树(
浏览 3
提问于2021-02-20
得票数 2
回答已采纳
2
回答
侦听器返回数组列表/字符串
、
使用一个遍历解析树
的
antlr
侦听器,我已经能够构建所需信息
的
数组列表。但我很难从监听者之外提取这些信息。 期望
的
示例如下: ...ParseTreeWalker.DEFAULT.walk(Listener, tree);
ParseTree
tree = myParser.statements();既然监听程序没有返回值,
有没有
办法
呢?
浏览 17
提问于2021-05-06
得票数 0
1
回答
为什么getChild方法在
ANTLR
4中返回
ParseTree
而不是ParseRuleContext?
我想要将新
节点
插入到解析器访问树时刚得到
的
解析树中。位置可能是当前
节点
的
父
节点
或兄弟
节点
,或者就在当前
节点
之前,因此我需要通过调用ParseRuleContext中
的
getParent和getChild方法来检查是否存在与新
节点
的
规则名称匹配
的
节点
。getParent返回ParseRuleContext,但getChild返回
ParseTree
。为什么这两个方法返
浏览 0
提问于2013-07-12
得票数 1
回答已采纳
2
回答
使生成
的
解析器在Java中为
ANTLR
4.8工作
、
我一直很难让生成
的
解析器在Java中为
ANTLR
4.8工作。这个问题还有其他
的
答案,但是似乎
ANTLR
从4.7开始就改变了一些事情,所有其他
的
答案都是在这个变化之前。(formula); CommonTokenStreamtokens = new CommonTokenStream(lexer);
An
浏览 8
提问于2021-12-05
得票数 0
回答已采纳
3
回答
Antlr
4不能正确识别unicode字符
我有非常简单
的
语法,它试图匹配“é”来表示E_CODE。我已经使用TestRig工具(带有-tokens选项)对其进行了测试,但是解析器无法正确匹配它。我
的
输入文件是在没有BOM
的
UTF-8中编码
的
,我使用了
ANTLR
版本4.4。其他人也能检查一下吗?我在我
的
控制台上得到了这个输出:grammar Unicode; E_CODE: '\u00E9' | 'é';
浏览 1
提问于2014-10-24
得票数 4
回答已采纳
1
回答
如何通过Kotlin和
Antlr
实现字符串数据容器并使用它添加两个字符串
、
、
、
我正在尝试使用Kotlin和
Antlr
创建自己
的
语言解析器。我正在尝试为字符串数据实现一个数据容器,并执行代码。要执行
的
代码: val program = """y = "World"; print(x ++ y);import
浏览 4
提问于2021-04-11
得票数 0
1
回答
ANTLR
4将
节点
直接添加到解析树中
、
我刚接触
ANTLR
并使用
ANTLR
4 (4.7.2Jar文件)。我目前正在开发Oracle解析器。有可能吗?我相信Less4j允许类似的事情。
浏览 0
提问于2020-11-13
得票数 0
1
回答
java如何从树
节点
或排序
节点
获取令牌
、
、
、
、
我需要对
Antlr
解析树中
的
字母
节点
进行排序。parser.setBuildParseTree(true);
ParseTree
: 我
的
想法是创建新
的
树-数据类,并将递归子类从
Antlr
树复制到ArrayList,然后排序数组和addChildren到新树。我尝试了很多来自
ParseTree
类
的</em
浏览 3
提问于2017-08-22
得票数 0
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
有没有什么办法可以把带水印的图片上的水印去掉
大数据入门基础系列之Hive驱动器Driver之解释器Parser
代码生成模式:未来的代码模式会是怎样的?
SparkSQL内核剖析
Creator组件化的编程探索
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券