当前位置: 首页 > 知识库问答 >
问题:

如何创建lexer/parser?

晋西岭
2023-03-14

使用:
Visual Studio-2019

要安装antlr,我使用-tunnelvisionlabs/antlr4cs//github.com

我在这里使用了语法-antlr/grammars-v4//github.com
语法:
-csharplexer.g4;
-csharpparser.g4;
-csharppreprocessorparser.g4;

问题。更新-1.
1。我说的对吗?
2。我可以从哪里获取数据来填写csharplexer.g4文件?
我可以从csharplexer.g4文件中获取数据吗?该文件位于链接 https://github.com/antlr/grammars-v4/tree/master/csharp?
3。是否以相同的方式创建文件“CSharpParser.g4”和“CSharpPreProcessorParser.g4”?
4。对于文件使用什么模板-“CSharpPreProcessorParser.g4”?

共有1个答案

陈龙野
2023-03-14

通过将Antlr包添加到VS项目中,包括一个语法文件并构建项目,输出文件(lexer/parser)将自动生成在语法文件所在的同一文件夹中。

然后,您应该使用VS“add existing Item”将生成的cs文件添加到项目中,以便将它们编译为“C#”文件。

 类似资料:
  • 我们创建一个IDWriteFactory7 CComPtr接口: 创建工厂工作。但如果我们尝试创建IDWriteTextLayout4,则使用以下工厂: CreateTextLayout(..)方法不能使用IDWriteTextLayout4,而是需要IdWriteTextLayout。 有人能举个例子吗?

  • 所以我知道如何创建映射值列表

  • 先看看JDK中对DataSource的描述: 作为 DriverManager 工具的替代项,DataSource 对象是获取连接的首选方法。 基本实现 - 生成标准的 Connection 对象 连接池实现 - 生成自动参与连接池的 Connection 对象。此实现与中间层连接池管理器一起使用。 简单来说,就是获取数据库连接的一个通用接口, 常见的dbcp,c3p0,druid都是DataSo

  • Lexer是一个由 Java 编写的 C 语言词法分析器,词法分析是编译过程的第一个阶段,是编译的基础。这个阶段的任务是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构词规则识别单词(也称单词符号或符号)。 主要特点有: 支持识别十进制数、八进制数、标识符、关键字、分割符、操作符等多种词素 支持文件导入和源代码编写两种输入方式 采用Swing GUI类库,算法和UI通过回调接口实现松耦合 运行效果:

  • 通过大量的试验和错误,我已经在我的沙盒中创建了功能触发器。我的问题是,我现在想把它应用到我的实时组织中,但我似乎无法理解整个顶点类的事情。 如何创建类? 我的触发器背后的想法是,当保存opportunity记录时,soql查询将查看在“类别”字段中选择的选取列表值,并找到具有匹配名称的活动供应商或成员服务帐户类型,并带出其salesforce id。将该sfid拖到“我的供应商名称查找”字段中,将

  • 问题内容: 我想给一些用户提供一百万个密码,例如: 必须至少包含6个字符 它必须包含数字和字母 我应该在这里使用吗?怎么样? 问题答案: Apache Commons Lang的RandomStringUtils提供了一些生成随机字符串的方法,该字符串可用作密码。 以下是8个字符的密码创建示例: 这将产生以下结果: 当然,您也可以使用一些方法来限制密码生成所允许的字符集: 将仅创建以下字符的密码: