Packages

object Parser

Source
Parser.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Parser
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait FollowedBy[In, +A, M[-_, +_]] extends AnyRef

    An intermediate object for creating sequence-based combination methods for a Parser or Consumer.

    An intermediate object for creating sequence-based combination methods for a Parser or Consumer.

    A

    Output type for the "first" parser/consumer; using the combination methods in this trait will result in an instance of T1 being used to create a "second" parser/consumer/transformer to be run sequentially after the first.

    M

    Type constructor for the parser/consumer of a given output type

  2. trait Handler[-In, +Out] extends AnyRef

    An internally-mutable representation of a Parser, which reacts to inputs from a data stream and eventually produces a result.

  3. implicit final class InvariantOps[In, Out] extends AnyVal
  4. implicit class ParserFollowedByOps[In, A] extends AnyRef

    Adds followedBy and followedByStream to Parser (they aren't defined in the Parser trait due to the In type needing to be invariant here)

  5. trait Stateless[-In, +Out] extends Parser[In, Out] with Handler[In, Out]

    Specialization for Parsers which require no mutable state.

    Specialization for Parsers which require no mutable state. A "stateless" parser acts as its own handler.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply[In]: ParserApplyWithBoundInput[In]

    Convenience for creating parsers whose input type is bound to In.

    Convenience for creating parsers whose input type is bound to In.

    This is particularly nice when the Out type can be inferred by the compiler, e.g.

    Parser[Int].fold(1)(_ + _)
    // versus
    Parser.fold[Int, Int](1)(_ + _)
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. implicit def catsApplicativeForParser[In](implicit callerPos: CallerPos): Applicative[[A]Parser[In, A]]

    Applicative for Parser with a fixed In type.

  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  8. def defer[In, Out](p: => Parser[In, Out]): Parser[In, Out]

    Creates a parser which delegates to the given call-by-name p parser.

    Creates a parser which delegates to the given call-by-name p parser. The p expression isn't evaluated until a handler created by this parser is created - that handler will be p's handler. The underlying parser is not memoized, so if a new handler is constructed, the p expression will be re-evaluated.

    In

    The parser's input type

    Out

    The parser's output type

    p

    A call-by-name expression which returns a Parser

  9. def deferHandler[In, Out](h: => Handler[In, Out]): Parser[In, Out]

    Creates a parser from a call-by-name handler construction expression.

    Creates a parser from a call-by-name handler construction expression. This is effectively doing

    new Parser[In, Out] {
      def newHandler = h
    }
  10. def delay[Out](value: => Out): Parser[Any, Out]

    Creates a parser which evaluates the call-by-name value expression.

    Creates a parser which evaluates the call-by-name value expression. The value expression won't be evaluated until a handler created by this parser is asked to step or finish. The value is not memoized, so if a new handler is created, that handler will re-evaluate the value.

    Out

    the result type

    value

    A call-by-name expression which will be evaluated by the returned parser's Handler

  11. def drain: Parser[Any, Unit]

    Create a parser which will consume the entire input stream, ignoring each value, yielding a Unit result when the stream ends.

  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  15. def find[In](predicate: (In) => Boolean): Parser[In, Option[In]]

    Creates a parser which returns the first input for which the predicate function returns true.

  16. def first[In](implicit arg0: TypeName[In]): Parser[In, In]

    Creates a parser which returns the first input it receives, or throws a SpacException.MissingFirstException when handling an empty stream.

  17. def firstOpt[In]: Parser[In, Option[In]]

    Creates a parser which returns the first input it receives, or None when handling an empty stream.

  18. def fold[In, Out](init: Out)(op: (Out, In) => Out): Parser[In, Out]

    Creates a parser which folds inputs into its state according to the op function, returning its final state when the input stream ends.

    Creates a parser which folds inputs into its state according to the op function, returning its final state when the input stream ends.

    init

    The initial state

    op

    state update function

  19. def fromBuilder[In, Out](b: => Builder[In, Out]): Parser[In, Out]

    Creates a parser whose handlers which will construct a new builder via the call-by-name b expression.

    Creates a parser whose handlers which will construct a new builder via the call-by-name b expression. The builder's result will be used as the result of the handler.

  20. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  21. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  22. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  23. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. def oneOf[In, Out](parsers: Parser[In, Out]*): Parser[In, Out]

    Create a single parser which will attempt to run each of the given parsers in parallel, yielding the result from the first of the parsers that successfully completes.

    Create a single parser which will attempt to run each of the given parsers in parallel, yielding the result from the first of the parsers that successfully completes. If multiple parsers return a result for the same input, priority is determined by their order when given to this method. If all of the parsers fail by throwing exceptions, all but the latest exception will be swallowed, and the last exception will be rethrown.

    parsers

    A collection of Parsers which will be run in parallel.

  27. def pure[Out](value: Out): Parser[Any, Out]

    Creates a parser which always results in value.

    Creates a parser which always results in value.

    value

    the result of the parser

  28. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  29. def tap[In](f: (In) => Unit): Parser[In, Unit]

    Create a parser which runs the side-effecting function f for each input it receives, yielding a Unit result.

  30. def toChain[In]: Parser[In, Chain[In]]

    Creates a parser that builds a cats.data.Chain from the inputs it receives.

  31. def toList[In]: Parser[In, List[In]]

    Creates a parser that builds a List from the inputs it receives.

  32. def toMap[K, V]: Parser[(K, V), Map[K, V]]

    Creates a parser that builds a Map from the (key, value) tuple inputs it receives.

  33. def toString(): String
    Definition Classes
    AnyRef → Any
  34. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  35. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Deprecated Value Members

  1. def constant[Out](value: Out): Parser[Any, Out]
    Annotations
    @deprecated
    Deprecated

    (Since version v0.9) use .pure instead

  2. def firstOption[In]: Parser[In, Option[In]]
    Annotations
    @deprecated
    Deprecated

    (Since version v0.9) Use firstOpt instead

  3. def foreach[In](f: (In) => Any): Parser[In, Unit]
    Annotations
    @deprecated
    Deprecated

    (Since version v0.9) Use tap instead

Inherited from AnyRef

Inherited from Any

Ungrouped