我想使用我正在编写的自定义扩展计算的附加信息来扩展 Visual Studio 对 C++ 的解析。为了省去为我的 IScanner
编写完整 LanguageService
的麻烦,我想我会查询负责扫描 C++ 的 LanguageService
,并简单地代理它。
到目前为止,我的搜索仅指出我使用例如完成 LanguageService
重新实现。 ANTLR 或自定义扫描仪。我试图从我的 Visual Studio 插件中使用 System.Reflection
,但它似乎没有向我显示除我之外的任何类。
那么,知道如何检索理解 C++ 的 LanguageService
实例吗?
最佳答案
据我所知,不可能代理 C++ LanguageService(或任何其他语言服务),因为它没有被设计为具有可扩展性点。所以你只能从头开始重新实现它(这将是一项非常艰巨的任务)。 Visual Studio 中语言服务的目的是为在 IDE 中编辑源代码提供特定于语言的支持。您确定需要语言服务吗?你在做什么样的扩展?
至于获得 Visual Studio 服务,你可以看看这篇好文章“LearnVSXNow! #26 - Services — with no-code service initialization”
关于c# - 我可以代理现有的 Visual Studio LanguageService 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13570330/