c++ - 我需要一种机制来允许使用 C++ 运行时在 ANTLR4 中处理包含文件
问题描述
我正在寻找一种方法来允许使用 ANTLR4 开发的语言支持包含文件的概念。我需要它与 ANTLR4 的 C++ 运行时版本一起工作。
我尝试使用从 ANTLR3 中找到的代码,但由于 ANTRL3 和 ANTRL4 之间的更改而出错。该示例已由解析器生成器可以处理但生成的 C++ 代码无法编译的 Mike Lischke(请参阅https://stackoverflow.com/a/59101124/57246 )更正。我收到以下类型的错误:
1) 语句CommonTree* includetree = nullptr; 和 gramLexer* innerlexer = new gramLexer(inputstream); 产生错误
Unknown type name 'CommonTree'
Unknown type name 'gramLexer
2) catch (Exception fnf)子句导致
Unknown type name 'Exception'
我不知道这里是否存在基本问题,或者是否需要一些额外的 C++ 头文件,但我被困住了,非常感谢一些帮助。
谢谢
解决方案
推荐阅读
- bash - 将带空格的变量传递给函数
- python - 创建一个从文件读取的函数,创建一个附加到列表的对象
- php - 在新选项卡中打开用户配置文件
- python - AWS Lambda 中断了用于解密环境变量的代码
- xgboost - 在测试集上使用 XGBoost 的 AUC 实现
- sql-server - 我正在尝试将 SQL Server RDS 的 DMS 设置到另一个 SQL Server RDS,并且当我尝试运行“exec msdb.dbo.rds_cdc_enable_db”时
- python - 需要帮助找出为什么我的字符串比较没有通过所有测试用例
- angular - 如何在模块规范文件中模拟模块依赖项?
- powershell - 从 CSV 使用 powershell 创建文件夹
- sql - 如果我从 V$SQL 视图查询,它是否包括仍在运行但尚未完成的 SQL?