我在ANTLRWorks 1.5.2中写了一段时间的语法。 我还添加了一些操作,所以当我使用while代码调试我的代码时,它将在ANTLRWorks的输出中显示3个地址代码。 我的语法是这样的:
NAME:
LETTER (LETTER | DIGIT | '_')*;
NUMBER:
DIGIT+; // just integers
fragment DIGIT:
'0'..'9';
fragment LETTER:
'A'..'Z' | 'a'..'z';
RELATION:
'<' | '<=' | '==' | '>=' | '>' | '!=' ;
WHITESPACE:
(' ' | '\t' | '\r' | '\n')+ { $channel = HIDDEN; };
我生成了我的语法,输出文件夹中有whileParser.cs和whileLexer.cs。 现在我想将我的语法添加到c#项目中。 我想从用户那里获得输入,然后向我们显示我的语法输出。 我不知道如何将.g文件和输出类添加到c#项目中。 我正在使用visual studio 2013。 有人可以帮助我吗?
答案 0 :(得分:0)
你的语法包含Java代码块,你需要先将它们翻译成C#。实际上,这可能是您使用ANTLR 4和/或切换到解析树方法的好机会。我应该提到ANTLRWorks 2版本,主要针对ANTLR 4,如果需要的话。
无论如何,只需安装ANTLR Visual Studio Plugin并让它为您处理。它适用于ANTLR 3和4。
然后,您必须将ANTLR运行时添加到项目中。为此,您可以安装ANTLR4 NuGet或ANTLR3 version,具体取决于您最终选择使用的版本。