Parsers

name.rayrobdod.stringContextParserCombinator.Parser.Parsers
trait Parsers[Expr[_], ToExpr[_], Type[_]]

A trait that provides Parser factory methods that conform to a particular input Expr type parameter.

In scala 3, the Parser companion object contains methods similar to these for quoted.Expr, and as such this would generally by calling methods directly on Parser. However, since in scala 2 the Expr depends on a particular instance of blackbox.Context, instead an Parsers must be constructed from the Parser companion object's macroParsers method that takes a Context.

Attributes

Source
Parser.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Grouped members

String-Part

def isString(str: String): Parser[Unit]

Succeeds if the next set of characters in the input is equal to the given string

Succeeds if the next set of characters in the input is equal to the given string

Attributes

Source
Parser.scala

String-Part as Char

def charIn(str: Set[Char]): Parser[Char]

Succeeds if the next character is a member of the given Set; captures that character

Succeeds if the next character is a member of the given Set; captures that character

Attributes

Source
Parser.scala
def charIn(str: Seq[Char]): Parser[Char]

Succeeds if the next character is a member of the given Seq; captures that character

Succeeds if the next character is a member of the given Seq; captures that character

Attributes

Source
Parser.scala
def charIn(str: String): Parser[Char]

Succeeds if the next character is a member of the given String; captures that character

Succeeds if the next character is a member of the given String; captures that character

Attributes

Source
Parser.scala
def charWhere(fn: Char => Boolean): Parser[Char]

Succeeds if the next character matches the given predicate; captures that character

Succeeds if the next character matches the given predicate; captures that character

Attributes

Source
Parser.scala

String-Part as Codepoint

Succeeds if the next codepoint is a member of the given Set; captures that code point

Succeeds if the next codepoint is a member of the given Set; captures that code point

Attributes

Source
Parser.scala

Succeeds if the next codepoint is a member of the given Seq; captures that code point

Succeeds if the next codepoint is a member of the given Seq; captures that code point

Attributes

Source
Parser.scala

Succeeds if the next codepoint is a member of the given string; captures that code point

Succeeds if the next codepoint is a member of the given string; captures that code point

Attributes

Source
Parser.scala

Succeeds if the next codepoint matches the given predicate; captures that code point

Succeeds if the next codepoint matches the given predicate; captures that code point

Attributes

Source
Parser.scala

Argument-Part

def ofType[A](implicit tpe: Type[A]): Parser[Expr[A]]

A parser that succeeds iff the next part of the input is an arg with the given type, and captures the arg's tree

A parser that succeeds iff the next part of the input is an arg with the given type, and captures the arg's tree

Attributes

Source
Parser.scala

Constant

def fail(message: String): Parser[Nothing]

A parser that always reports a failure

A parser that always reports a failure

Attributes

Source
Parser.scala
def pass: Parser[Unit]

A parser that consumes no input and always succeeds

A parser that consumes no input and always succeeds

Attributes

Source
Parser.scala

Position

def end: Parser[Unit]

A parser that succeeds iff the input is empty

A parser that succeeds iff the input is empty

Attributes

Source
Parser.scala

Miscellaneous

def `lazy`[A](fn: () => Parser[A]): Parser[A]

Indirectly refers to a parser, to allow for mutual-recursion

Indirectly refers to a parser, to allow for mutual-recursion

Attributes

Source
Parser.scala
def paired[A](interpolator: Interpolator[A], extractor: Extractor[A]): Parser[A]

A parser that acts like the Interpolator when interpolating, and like the Extractor when extracting

A parser that acts like the Interpolator when interpolating, and like the Extractor when extracting

Attributes

Source
Parser.scala

Type members

Types

type Extractor[A] = Extractor[Expr, Type, A]

Attributes

Source
Parser.scala
type Interpolator[A] = Interpolator[Expr[Any], A]

Attributes

Source
Parser.scala
type Parser[A] = Parser[Expr, Type, A]

Attributes

Source
Parser.scala