Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
令牌流不';ANTLR解析器C#实现中不存在_C#_Antlr_Antlr4 - Fatal编程技术网

令牌流不';ANTLR解析器C#实现中不存在

令牌流不';ANTLR解析器C#实现中不存在,c#,antlr,antlr4,C#,Antlr,Antlr4,我目前正在学习“权威的ANTLR 4参考”的“用监听器构建翻译器”教程,但我正在使用C#并将示例转化为C# 然而,我被一个类型为“TokenStream”的变量声明卡住了,我在C#中似乎找不到它(我在任何地方都找不到)。Java代码教程说 TokenStream tokens = parser.getTokenStream(); 除了C#中缺少的TokenStream类型之外,我甚至找不到解析器类的等效方法。 ANTLR的C#实现是如何做到这一点的?可能 顺便说一下,AntlR4Java和C#

我目前正在学习“权威的ANTLR 4参考”的“用监听器构建翻译器”教程,但我正在使用C#并将示例转化为C#

然而,我被一个类型为“TokenStream”的变量声明卡住了,我在C#中似乎找不到它(我在任何地方都找不到)。Java代码教程说

TokenStream tokens = parser.getTokenStream();
除了C#中缺少的TokenStream类型之外,我甚至找不到解析器类的等效方法。 ANTLR的C#实现是如何做到这一点的?

可能


顺便说一下,AntlR4Java和C#运行时库基本相同,只是C#的接口前面有一个
I
,C#运行时(显然)遵循C#命名约定(方法名以大写字母开头,等等)。

我在ANTLR4.7.2中为C#使用CommonTokenStream类时遇到了麻烦

我需要在Listener类的顶部添加一个声明:

using Antlr4.Runtime;

@500 InternalServerError:我也这么认为,但有两件事告诉我,
CommonTokenStream
不是我所需要的:解析器类中没有方法会返回该类的实例,在Java示例中,CommonTokenStream也在主程序方法中不久被引用,正如您链接到的示例所示,这听起来是正确的。它具有教程中随后调用的方法。但是parser对象根本没有提供获取令牌流的“getTokenStream”等价物:/@DebugErr它不是
TokenStream
就是
InputStream
属性,而是方法。@280Z28我也这么认为。没有令牌流属性。InputStream是IIntStream类型(不管是什么?),但我能够转换它。案例已解决:)嗨,欢迎来到堆栈溢出。你的回答对原来的问题和给出的评论几乎没有什么补充。