修改antlr错误信息输出格式的方法

2023-05-16

找到 /antlr/DefaultFileLineFormatter.java,修改类DefaultFileLineFormatter的函数getFormatString().我将其修改如下,以适应vc的错误信息输出格式:

package antlr;

/* ANTLR Translator Generator
?* Project led by Terence Parr at
http://www.jGuru.com
?* Software rights: http://www.antlr.org/license.html
?*
?* $Id: //depot/code/org.antlr/release/antlr-2.7.4/antlr/DefaultFileLineFormatter.java#1 $
?*/

// gcb 2004-8-13:change the error report string's format to compatiale with MS vc
public class DefaultFileLineFormatter extends FileLineFormatter {
??? public String getFormatString(String fileName, int line, int column) {
??????? StringBuffer buf = new StringBuffer();

??????? if (fileName != null)
??????????? buf.append(fileName + "(");//":");

??????? if (line != -1) {
??????????? if (fileName == null)
??????????????? buf.append("line (");

??????????? buf.append(line);
???
??????????? buf.append(") ");

??????????? if (column != -1)
??????????????? buf.append(":" + column);

??????????? buf.append(":");
??????? }

??????? buf.append(" ");

??????? return buf.toString();
??? }
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

修改antlr错误信息输出格式的方法 的相关文章

  • ANTLR:自定义语法示例的词法错误帮助

    什么方法可以让我最大限度地报告词法错误 举一个简单的例子 我想为以下文本编写语法 为了简单起见 空格被忽略 字符串常量中不能有 myvariable 2 myvariable hello world Group myvariablegrou
  • ANTLR 解析器生成器最适合内存有限的 C++ 应用程序吗?

    我正在寻找一个好的解析器生成器 我可以用它来读取我们的大型商业应用程序中的自定义文本文件格式 目前 这种特定的文件格式是使用手工递归解析器读取的 但该格式已经发展和复杂化到该方法变得难以管理的程度 看来最终的解决方案是为这种格式构建正确的语
  • 如果双引号字符串以转义反斜杠结尾,则词法分析器规则会保持匹配字符,就好像它们是带引号字符串的一部分一样

    如果双引号字符串以转义的反斜杠结尾 则词法分析器规则会变得贪婪并保持匹配字符 就好像它们是带引号的字符串的一部分一样 然后词法分析器认为实际开始下一个带引号的字符串的双引号正在结束第一个字符串 并在后面的字符上给出语法错误 我们需要调整词法
  • 不同状态下不同的词法分析器规则

    我一直在为 HTML 中嵌入的某些模板语言 FreeMarker 开发解析器 例如 abc h1 Welcome user lt if user Big Joe gt our beloved leader h1 p Our latest p
  • 如何使用 C# 的 ANTLR 获取 Lexer 和 Parser?

    似乎 ANTLR 支持 C 语言 但我不知道如何生成相关类 我搜索并看到存在 Visual Studio 扩展 但我不支持 2015 那么如何使用 ANTLR 手动为 C 生成词法分析器和解析器 VS 扩展主要用于语法突出显示和编辑器细节
  • 为什么 ANTLR4 不匹配单词“of”和标点符号“,”?

    我有一个Hello g4带有语法定义的语法文件 definition wordsWithPunctuation words WORD wordsWithPunctuation word word punctuation word word
  • ANTLR:“规则范围内缺少属性访问”问题

    我正在尝试构建一个 ANTLR 语法来解析标记句子 例如 DT The NP cat VB ate DT a NP rat 并有语法 fragment TOKEN A Z a z fragment WS t WSX WS DTTOK DT
  • ANTLR:从不同的语法调用规则

    是否可以从不同的语法调用规则 目的是在同一个文件中包含两种语言 第二种语言以 begin 开头 其中 是第二种语言 该语法应该调用另一个语法来解析该第二种语言 例如 grammar A start rule begin B program
  • ANTLR 3 中 wikitext-to-HTML 的工作示例

    我试图在 ANTLR 3 中充实一个 wikitext to HTML 翻译器 但我一直陷入困境 您知道我可以检查的工作示例吗 我尝试了 MediaWiki ANTLR 语法和 Wiki Creole 语法 但无法让它们在 ANTLR 3
  • antlr4:如何知道在给定上下文的情况下选择了哪个替代方案

    假设有一个关于 类型 的规则 它可以是预定义类型 由 IDENTIFIER 引用 或 typeDescriptor type IDENTIFIER typeDescriptor 在我的程序中 我有一个 typeContext ctx 的实例
  • xtext 中的终端/数据类型/解析器规则

    我正在使用 xtext 2 4 我想做的是类似 SQL 的语法 让我困惑的是我不确定哪些东西应该被视为终端 数据类型 解析器规则 到目前为止我的语法相关MyTerm is Model terms MyTerm MyTerm constant
  • ANTLR @header、@parser、superClass 选项和基本文件 io (Java)

    我想将解析器操作与基本文件 io Java 一起使用 例如 G ANTLR 语法中的 PrintWriter 我必须使用 superClass 选项还是可以使用 header 在这两种情况下 我如何声明 PrintWriter 对象以及如何
  • C# ANTLR 语法?

    我正在寻找交钥匙ANTLR http www antlr org C 语法 生成可用的抽象语法树 AST 并且与后端语言无关或以 C C C 或 D 为目标 它不需要支持错误报告 附 我不愿意做任何修复 因为替代方案并不难 这可能太晚了 但
  • Antlr4中有哪些加速解析的方法?

    我对Antlr4的性能有些怀疑 我目前正在使用 Python 和 Antlr4 与 Java 相比 它非常慢 使用 Antlr4 IntelliJ 插件验证 由于我需要使用更大的代码进行解析 因此我计划切换到 Antlr 最快的语言 例如
  • ANTLR4:隐式或显式标记定义

    在 ANTLR4 中使用显式标记定义有哪些优点和缺点 我发现单括号中的文本比创建单独的标记并使用它代替文本更具描述性且更易于使用 E g grammar SimpleTest top library module library libra
  • ANTLR语法的迁移工具

    假设我有以下简单语法 查询 DSL grammar TestGrammar term textTerm textTerm Text T VALUE STRING T VALUE value STRING WS t r n gt skip 然
  • 使用 ANTLR 验证 LL(1) 语法

    我知道 ANTLR 可以接受 LL 语法 但是 有什么方法可以使用 ANTLR 检查语法是否是 LL 1 吗 options k 1 如果你的语法不在 LL 1 中 它会发出警告
  • Antlr3 匹配没有空格的标记

    给定输入 term gt 1 数字 1 和比较运算符 gt 应该在 AST 中生成单独的节点 如何才能实现这一目标 在我的测试中 仅当 c 和 1 用空格分隔时才会发生匹配 如下所示 term lt 1 当前语法 startExpressi
  • ANTLR 中的布尔和算术表达式语法

    我正在尝试编写算术和布尔表达式的语法 我不明白我做错了什么 对于我的语法 ANTLR 说 致命 规则logic atom 由于可从 alts 1 2 到达的递归规则调用而具有非 LL 决策 通过左分解或使用语法谓词或使用 backtrack
  • Antlr 解析器运算符优先级

    考虑以下语法 我对运算符优先级有疑问 例如 res 2 a b有一个类似的解析树res 2 a b 我知道问题出在哪里 但我没有想到没有相互左递归的 漂亮 解决方案 你能帮我一点忙吗 该语法与自定义访问者一起使用 grammar Math

随机推荐

  • PCL系列——如何可视化深度图像

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——如何使用迭代最近点法(ICP)配准

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——如何逐渐地配准一对点云

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——三维重构之泊松重构

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——三维重构之贪婪三角投影算法

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——三维重构之移动立方体算法

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • 解决Ubuntu中文显示为乱码

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 1 安装所需软件 sudo apt get install zh autoconvert sudo apt get insta
  • hexo教程系列——hexo安装教程

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 本文详细描述了如何在Github上 xff0c 使用hexo部署博客 安装Hexo 安装node js node js官方下载
  • Python中类成员函数均为虚函数的理解

    python中类成员函数均为虚函数 我们可以通过下面的函数见识其威力 class A def foo self print 39 a 39 class B A def foo self print 39 b 39 for x in A B
  • MxNet系列——Windows上安装MxNet

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 开发环境 操作系统 xff1a Win7 64bit C 43 43 编译器 xff1a Visual Studio 2010
  • Eigen教程1 - 基础

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 固定大小的矩阵和向量 参考链接 xff1a http eigen tuxfamily org dox 2 0 Tutorial
  • Eigen教程2 - 入门

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 安装Eigen 无需安装 只需将Eigen位置添加到include路径中 Demo 1 MatrixXd xff0c X表示动
  • Eigen教程3 - 稀疏矩阵操作

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 稀疏矩阵操作 操作和求解稀疏问题需要的模块 xff1a SparseCore SparseMatrix 和 SparseVec
  • Eigen教程4 - 稀疏矩阵快速参考指南

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 本文对稀疏矩阵SparseMatrix的主要操作进行了总结 首先 xff0c 建议先阅读 Eigen教程2 稀疏矩阵操作 关于
  • Eigen教程5 - 求解稀疏线性方程组

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com Eigen中有一些求解稀疏系数矩阵的线性方程组 由于稀疏矩阵的特殊的表示方式 xff0c 因此获得较好的性能需要格外注意 查看
  • Eigen教程6 - Matrix-free solvers

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com Matrix free solvers 像ConjugateGradient 和 BiCGSTAB这样的迭代求解器可以用在 m
  • Eigen教程7 - Eigen和Matlab的比较

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com Eigen和Matlab比较 参考 http eigen tuxfamily org dox AsciiQuickRefere
  • MxNet系列——how_to——perf

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 性能 下面是一些技巧 xff0c 以尽可能的获取MXNet的最佳性能 数据 对于输入数据 xff0c 需要注意以下内容 xff
  • MxNet系列——how_to——visualize_graph

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 如何将神经网络可视化为计算图 该章节描述了如何在MXNet中使用在mx viz plot network来可视化 xff08
  • 修改antlr错误信息输出格式的方法

    找到 antlr DefaultFileLineFormatter java 修改类DefaultFileLineFormatter的函数getFormatString 我将其修改如下 以适应vc的错误信息输出格式 package antl