我正在使用ANTLR语法为自定义语言开发Visual Studio中的语言服务,但是该语法充满了C ++代码来处理预处理指令并提高编译器的效率。
然而,为Visual Studio编写语言服务很麻烦,因此我需要用C#解析器来实现相同的语言。这意味着我必须设置
我正在考虑编写一个小型导出程序,以从语法中删除所有C ++代码,并将类似于
是否有更聪明的方法来做到这一点?例如通过模板或嵌入两种语言的小技巧?
然而,为Visual Studio编写语言服务很麻烦,因此我需要用C#解析器来实现相同的语言。这意味着我必须设置
language=CSharp2
并从语法中剥离所有C ++代码。我正在考虑编写一个小型导出程序,以从语法中删除所有C ++代码,并将类似于
{ $channel = HIDDEN; }
的简单语句转换为{ $channel = TokenChannels.Hidden; }
。是否有更聪明的方法来做到这一点?例如通过模板或嵌入两种语言的小技巧?