Можно ли взаимодействовать с деревом синтаксиса CSharp из моего собственного расширения кода VS? У меня есть расширение, которое я сделал в самой Visual Studio, которое использует дерево синтаксиса Roslyn для выполнения различных задач редактирования и сортировки кода, и я хочу перенести его на VS Code.
Мое наивное предположение состоит в том, что если я смогу получить доступ к объекту OmnisharpServer, подключившись к Omnisharp VS Code Extension, я смогу извлечь оттуда соответствующую информацию. Я могу получить доступ к самому расширению, позвонив:
let csextension = vscode.extensions.getExtension('ms-vscode.csharp')
Но само расширение мало что раскрывает, поэтому мне интересно, правильная ли это методология? Если да, то как мне получить доступ к работающему серверу из моего собственного расширения?
Единственная другая стратегия, которая у меня есть, - это запустить исполняемый файл .net core, который использует Roslyn для анализа, но это, похоже, дублирует проблему, которая должна быть решена где-то в стеке.