RichParser

sbt.internal.util.complete.RichParser
sealed trait RichParser[A]

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

def !!!(msg: String): Parser[A]

Uses the specified message if the original Parser fails.

Uses the specified message if the original Parser fails.

Attributes

def &(o: Parser[_]): Parser[A]

Apply the original parser, but only succeed if o also succeeds. Note that o does not need to consume the same amount of input to satisfy this condition.

Apply the original parser, but only succeed if o also succeeds. Note that o does not need to consume the same amount of input to satisfy this condition.

Attributes

def *: Parser[Seq[A]]

Apply the original Parser zero or more times and provide the (potentially empty) sequence of results.

Apply the original Parser zero or more times and provide the (potentially empty) sequence of results.

Attributes

def +: Parser[Seq[A]]

Apply the original Parser one or more times and provide the non-empty sequence of results.

Apply the original Parser one or more times and provide the non-empty sequence of results.

Attributes

def <~[B](b: Parser[B]): Parser[A]

Produces a Parser that applies the original Parser and then applies next (in order), discarding the result of next. (The arrow point in the direction of the retained result.)

Produces a Parser that applies the original Parser and then applies next (in order), discarding the result of next. (The arrow point in the direction of the retained result.)

Attributes

def ?: Parser[Option[A]]

Apply the original Parser zero or one times, returning None if it was applied zero times or the result wrapped in Some if it was applied once.

Apply the original Parser zero or one times, returning None if it was applied zero times or the result wrapped in Some if it was applied once.

Attributes

def ??[B >: A](alt: B): Parser[B]

Apply the original Parser, but provide alt as the result if it fails.

Apply the original Parser, but provide alt as the result if it fails.

Attributes

def ^^^[B](value: B): Parser[B]

Apply the original Parser, but provide value as the result if it succeeds.

Apply the original Parser, but provide value as the result if it succeeds.

Attributes

def examples(s: String*): Parser[A]

Explicitly defines the completions for the original Parser.

Explicitly defines the completions for the original Parser.

Attributes

def examples(s: Set[String], check: Boolean): Parser[A]

Explicitly defines the completions for the original Parser.

Explicitly defines the completions for the original Parser.

Attributes

def examples(exampleSource: ExampleSource, maxNumberOfExamples: Int, removeInvalidExamples: Boolean): Parser[A]

Value parameters

exampleSource

the source of examples when displaying completions to the user.

maxNumberOfExamples

limits the number of examples that the source of examples should return. This can prevent lengthy pauses and avoids bad interactive user experience.

removeInvalidExamples

indicates whether completion examples should be checked for validity (against the given parser). Invalid examples will be filtered out and only valid suggestions will be displayed.

Attributes

Returns

a new parser with a new source of completions.

If an exception is thrown by the original Parser, capture it and fail locally instead of allowing the exception to propagate up and terminate parsing.

If an exception is thrown by the original Parser, capture it and fail locally instead of allowing the exception to propagate up and terminate parsing.

Attributes

def filter(f: A => Boolean, msg: String => String): Parser[A]

Produces a Parser that filters the original parser. If 'f' is not true when applied to the output of the original parser, the Parser returned by this method fails. The failure message is constructed by applying msg to the String that was successfully parsed by the original parser.

Produces a Parser that filters the original parser. If 'f' is not true when applied to the output of the original parser, the Parser returned by this method fails. The failure message is constructed by applying msg to the String that was successfully parsed by the original parser.

Attributes

def flatMap[B](f: A => Parser[B]): Parser[B]

Applies the original parser, applies f to the result to get the next parser, and applies that parser and uses its result for the overall result.

Applies the original parser, applies f to the result to get the next parser, and applies that parser and uses its result for the overall result.

Attributes

def id: Parser[A]

Returns the original parser. This is useful for converting literals to Parsers. For example, 'c'.id or "asdf".id

Returns the original parser. This is useful for converting literals to Parsers. For example, 'c'.id or "asdf".id

Attributes

def map[B](f: A => B): Parser[B]

Apply the original Parser to the input and then apply f to the result.

Apply the original Parser to the input and then apply f to the result.

Attributes

def string(implicit ev: A <:< Seq[Char]): Parser[String]

Converts a Parser returning a Char sequence to a Parser returning a String.

Converts a Parser returning a Char sequence to a Parser returning a String.

Attributes

def |[B >: A](b: Parser[B]): Parser[B]

Apply either the original Parser or b.

Apply either the original Parser or b.

Attributes

def ||[B](b: Parser[B]): Parser[Either[A, B]]

Apply either the original Parser or b.

Apply either the original Parser or b.

Attributes

def ~[B](next: Parser[B]): Parser[(A, B)]

Apply the original Parser and then apply next (in order). The result of both is provides as a pair.

Apply the original Parser and then apply next (in order). The result of both is provides as a pair.

Attributes

def ~>[B](b: Parser[B]): Parser[B]

Produces a Parser that applies the original Parser and then applies next (in order), discarding the result of the original parser. (The arrow point in the direction of the retained result.)

Produces a Parser that applies the original Parser and then applies next (in order), discarding the result of the original parser. (The arrow point in the direction of the retained result.)

Attributes

Concrete methods

def examples(exampleSource: ExampleSource): Parser[A]

Value parameters

exampleSource

the source of examples when displaying completions to the user.

Attributes

Returns

a new parser with a new source of completions. It displays at most 25 completion examples and does not remove invalid examples.