Есть ли подходящий способ генерации синтаксической диаграммы [jpg, png и т.д.] (И/или AST) непосредственно из Scala Комбиниров Parser? - программирование
Подтвердить что ты не робот

Есть ли подходящий способ генерации синтаксической диаграммы [jpg, png и т.д.] (И/или AST) непосредственно из Scala Комбиниров Parser?

Единственные способы, о которых я знаю, не являются "прямыми":

  • преобразование в формат ANTLR и использование его собственного визуализатора
  • VISUALLANGLAB, который, как представляется, требует целых щелчков мыши "переписать"
  • реализация конвертера сама по себе (что было бы смешно, но отнимало много времени)
  • вторая ссылка ниже

по теме:

Вторая ссылка предлагает отладить добавление неявного метода к синтаксическим анализаторам:

implicit def toLogged(name:String) = new { 
  def !!![T](p:Parser[T]) = log(p)(name)
}

Может быть, АСТ будет более целесообразным/полезным; но вопрос остается похожим.

4b9b3361

Ответ 1

Возможно, я неправильно понял ваш вопрос.

Компиляторы парсера

Scala используются для анализа строк для экземпляров типов, которые вы можете использовать (как пользовательские, так и встроенные). Результатом является структура экземпляров Scala, которые вы решите, это может быть что угодно.

Вы можете создать парсер, который анализирует вашу произвольную строку в примерах хорошо известной структуры java, например ECore.

Без usecase трудно предложить лучший путь для вашей проблемы. Возможно, Xtext может вам помочь: http://www.eclipse.org/Xtext/. В Xtext есть несколько встроенных функций, однако это плагин Eclipse, и вам может понадобиться что-то еще.