abstract class ParserApi[+T, Elem, Repr] extends AnyRef
- Alphabetic
- By Inheritance
- ParserApi
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ParserApi()(implicit repr: ReprOps[Elem, Repr])
Abstract Value Members
- abstract def !: Parser[Repr, Elem, Repr]
Used to capture the text parsed by this as a
String - abstract def ?[R](implicit ev: Optioner[T, R]): Parser[R, Elem, Repr]
Parses this, optionally
- abstract def filter(predicate: (T) => Boolean): Parser[T, Elem, Repr]
applies the supplied predicate to the current parser succeeding on true failing on false
- abstract def flatMap[V](f: (T) => Parser[V, Elem, Repr]): Parser[V, Elem, Repr]
Uses the result of this parser to create another parser that will be used for the next parse
- abstract def log(msg: String = toString)(implicit out: Logger): Parser[T, Elem, Repr]
Wraps this in a Logged.
Wraps this in a Logged. This prints out information where a parser was tried and its result, which is useful for debugging
- abstract def map[V](f: (T) => V): Parser[V, Elem, Repr]
Transforms the result of this Parser with the given function
- abstract def opaque(msg: String = toString): Parser[T, Elem, Repr]
Makes this parser opaque, i.e.
Makes this parser opaque, i.e. hides it and its inner parsers from the stack trace, providing the specified message instead.
- abstract def rep[R](min: Int = 0, sep: Parser[_, Elem, Repr] = Pass[Elem, Repr], max: Int = Int.MaxValue, exactly: Int = -1)(implicit ev: Repeater[T, R]): Parser[R, Elem, Repr]
- abstract def rep[R](implicit ev: Repeater[T, R]): Parser[R, Elem, Repr]
Repeats this parser 0 or more times
- abstract def unary_!: Parser[Unit, Elem, Repr]
Wraps this in a Not for negative lookahead
- abstract def |[V >: T](p: Parser[V, Elem, Repr]): Parser[V, Elem, Repr]
Parses using this or the parser
p - abstract def ~[V, R](p: Parser[V, Elem, Repr])(implicit ev: Sequencer[T, V, R]): Parser[R, Elem, Repr]
Parses using this followed by the parser
p - abstract def ~/: Parser[T, Elem, Repr]
Performs a cut if this parses successfully.
- abstract def ~/[V, R](p: Parser[V, Elem, Repr])(implicit ev: Sequencer[T, V, R]): Parser[R, Elem, Repr]
Parses using this followed by the parser
p, performing a Cut if this parses successfully.Parses using this followed by the parser
p, performing a Cut if this parses successfully. That means that ifpfails to parse, the parse will fail immediately and not backtrack past this success.This lets you greatly narrow the error position by avoiding unwanted backtracking.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def withFilter(predicate: (T) => Boolean): Parser[T, Elem, Repr]
alias for
filter