2013-07-29 11 views
1

Могу ли я получить определенный пользовательский синтаксис в тексте и проанализировать его с помощью Roslyn (возможно, настроенного анализатора лексики/синтаксиса)? Если да, в каком документе/пространстве имен я должен искать?Может ли Roslyn проанализировать мой «пользовательский» синтаксис?

текст Я хочу, чтобы разобрать это всего лишь одного «выражение», а не целая программа, как:

A.B + Foo(Bar) and !Baz 

Здесь я хочу «сказать» лексический анализатор, который +!and! являются операторы и Foo(Bar) - вызов функции. Есть что-то вроде LexicalWalker, что я могу определить свои логики, а затем Roslyn может анализировать текст в правильные жетоны, чтобы я мог продолжать анализировать токены?

+0

Пока я видел, как Рослин разбирает почти все, это может показаться довольно странным. Некоторые из моих экспериментов: https://gist.github.com/leppie/5081390 – leppie

+0

@leppie: Интересно ... как может Roslyn «угадать» «MyFor» - это метод? По левой скобке следуют? Немного безрассудно. –

+0

Согласен. Вот почему я больше не исследовал, p – leppie

ответ

0

Теперь я нашел Irony вполне подходящий для моего требования.

+0

Можете ли вы расширить это? Что именно вы делали с помощью Иронии? – user1454265

Смежные вопросы