ANTLR,另一种语言识别工具,是一种语言工具,它提供了一个框架,用于从包含各种目标语言中的动作的语法描述构建识别器,解释器,编译器和翻译器。
如何检查token是否是EOF,以及如何获取之前的token到EOF
我有一个覆盖syntaxError的CustomErrorListener。当最后一个标记(EOF 之前)存在语法错误时,syntaxError 方法会将 EOF 报告为有问题的符号。 这是...
Antlr4 访问者函数将结果包装在数组中(更准确地说是在接受函数中)
我正在使用目标语言JavaScript编写antlr4解析器,我需要使用访问者从我的树中获取自定义输出(一个数组,其他数组级别上的每个树级别)。但我遇到了一些麻烦...
这是我的简短 ANTLR4 语言: 语法测试; 编程:(decl | expr)+ ; 声明:文档 |测验 ; doc: '%doc' 参数列表 ; 测验:“%quiz”参数列表 STR? '%测验'ENDL ; paramlist: '(' VAR '=' PARAMVAL {, V...
如何仅在另一个解析器接受时使用(Petit Parser for Dart)
我正在研究一种称为 fhir 映射语言 antlr 语法的东西,可以在这里找到。但我喜欢小解析器,所以我一直在尝试对其进行建模。我一直卡住的部分是 fhirpath
我正在 ANTLR 中编写语法,将 Java 源文件解析为 AST 以供以后分析。与其他解析器(如 JavaDoc)不同,我试图保留所有注释。这很难评论可以...
Antlr4 访问者(JavaScript)返回 udefine 数组
我正在尝试让antlr4访问者,它将从我的树返回自定义结果。我实现了这些功能: 导出默认类 GrammarParserVisitor 扩展 MyGrammarParserVisitor { // 访问
JS node.js 解析器由于 parser.MyStartRule() 而无法启动
我正在使用带有node.js支持的antlr4(4.13)JS解析器,当我运行代码时,我收到如下错误: const 树 = parser.MyStartRule(); ^ 类型错误:parser.MyStartRule 不是函数 我确实...
我正在实现一个 ANTLR 语法,我想在每个上下文中完全忽略空格(换行符除外)。鉴于此,我添加了以下规则: WS: [ ]+ -> 跳过 ; 然而...
我需要使用antlr4访问者(目标语言JavaScript)构建一个嵌套数组。 解析器.g4: 功能 : FUNCTION_NAME OPEN_ROUND_BRACKET(表达式(逗号表达式)*)? CLOSE_ROUND_BRACKET ...
尝试使用 ANTLR 来制作我的编译器的 AST 并获取返回值 null
我有一个项目,我必须使用ANTLR和java制作一个编译器来制作一个类似计算器的程序,该程序执行以下操作:加法减法乘法除法幂正弦余弦正切
我的C++文件中的这个函数正在与antlr交互: antlr4::tree::ParseTree* getTree(std::string caDefinition){ antlr4::ANTLRInputStream 输入(caDefinition); CAsyntaxLexer 词法分析器(&input); 一个...
Hibernate 5.6.15.与 ANTLR4 的最终兼容性检查
作为库版本升级的一部分,我需要将 ANTLR 版本从 2 更新到 4。我们的项目使用 Hibernate 5.6.15.Final,它依赖于 ANTLR2。会有兼容性问题吗...
我正在为类 Java 表达式的子集编写一个解析器,并且在解析此代码时发现了歧义: (某事)-x 因为它可以被解析为某种东西 - x (二进制表达式)或 (
我正在尝试更新遵循以下规范的 ANTLR 语法 https://github.com/facebook/graphql/pull/327/files 从逻辑上来说,它的定义是 字符串值 :: - `"` 字符串字符*...
ANTLR Lexer 在使用预处理器指令解析 C 代码时失败
我们使用 ObjectiveC 预处理器解析器和词法分析器语法来解析 C 代码中的指令,例如 #define、#include、#ifndef 等。以下是语法的相关部分(缩写为 br...
我有这个词法分析器配置: WS : ((' ' | ' ' | ' ' | ' ')+ | '\'' ') -> 跳过 ; T_引用 :''' ; T_CONFDIR_MYDIR : 'MyDirective' -> PushMode(mydir) ; T_COMM...
我正在使用 ANTLR 来解析搜索查询输入,例如: 年龄 > 25 或者 名字:“约翰” 该树通常如下所示: 我想添加对 IN 运算符和数组值的支持,...
我正在尝试解析以下形式的连接查询: “答案(x,y,z):-R(x,y),U(y,z)。”。 在 Java (Maven) 中使用 Antlr4 我构建了以下语法 语法CQ语法; // 解析器规则 查询...
我正在使用 AntLR 和 Rust 开发语法,我需要实现一个 ErrorListener 来收集稍后需要使用的语法错误。如果我使用具有内部 RefCell 的自定义侦听器...