Вопросы по теме 'parser-combinators'

Разбор языка на основе отступов с помощью комбинаторов парсера scala
Есть ли удобный способ использовать комбинаторы синтаксического анализатора Scala для анализа языков, в которых важны отступы? (например, питон)
1166 просмотров

Комбинаторы парсеров Scala: разбор по строкам
Используя библиотеку комбинаторов парсеров Scala, можно ли анализировать по строкам, а не по символам? Я хотел бы, чтобы мои пользовательские парсеры имели подпись (in: Reader[String]) => ParserResult[T] так что String in.first будет...
720 просмотров
schedule 15.02.2024

Scala Parser Combinators ‹~ ~›игнорирует все предыдущие операторы
Я использую комбинатор анализатора scala для извлечения идентификаторов («a» и «ACCOUNT_ID») во входной строке. Когда я использую ~>, он игнорирует все предыдущие части строки вместо непосредственно предшествующей строки. Может ли кто-нибудь помочь...
89 просмотров
schedule 15.09.2022

Комбинатор синтаксического анализатора Scala: анализ параметра
Скажем, у меня есть такой парсер: trait PT {} trait StatementPT extends PT{} ... class LoopConditionPT(val operation: String, val variable: IdentPT, val condition: Option[(String,ExpressionPT)]) extends StatementPT { ... }...
130 просмотров
schedule 28.04.2024

Почему между (char '') (char '') (многие charLiteral) не работает для разбора строковых литералов?
В документации для Text.Megaparsec.Char.Lexer.charLiteral предлагается использовать char '"' *> manyTill charLiteral (char '"') для разбора строковых литералов (где manyTill определено в модуле Control.Applicative.Combinators в библиотеке...
146 просмотров
schedule 30.09.2022

Почему синтаксический анализатор expr может анализировать только первый элемент?
у меня Празер package app import scala.util.parsing.combinator._ class MyParser extends JavaTokenParsers { import MyParser._ def expr = plus | sub | multi | divide | num def num = floatingPointNumber ^^ (x =>...
45 просмотров
schedule 19.11.2022