parsley

package parsley

Type members

Classlikes

class Failure[Err] extends Result[Err, Nothing] with Product with Serializable

Returned on parsing failure

Returned on parsing failure

Value Params
msg

The error message reported by the parser

Companion
object
object Failure
Companion
class
final class Parsley[+A] extends AnyVal

This is the class that encapsulates the act of parsing and running an object of this class with parse will parse the string given as input to parse.

This is the class that encapsulates the act of parsing and running an object of this class with parse will parse the string given as input to parse.

Note: In order to construct an object of this class you must use the combinators; the class itself is abstract

Authors

Jamie Willis

Version

1

Companion
object
object Parsley

This object contains the core "function-style" combinators as well as the implicit classes which provide the "method-style" combinators. All parsers will likely require something from within!

This object contains the core "function-style" combinators as well as the implicit classes which provide the "method-style" combinators. All parsers will likely require something from within!

Companion
class
sealed trait Result[+Err, +A]

Result of a parser. Either a Success[A] or a Failure

Result of a parser. Either a Success[A] or a Failure

Type Params
A

The type of expected success result

case class Success[A] extends Result[Nothing, A]

Returned when a parser succeeded.

Returned when a parser succeeded.

Type Params
A

The type of expected success result

Value Params
x

The result value of the successful parse

object character

This module contains many parsers to do with reading one or more characters. Almost every parser will need something from this module.

This module contains many parsers to do with reading one or more characters. Almost every parser will need something from this module.

Since

2.2.0

object combinator

This module contains a huge number of pre-made combinators that are very useful for a variety of purposes.

This module contains a huge number of pre-made combinators that are very useful for a variety of purposes.

Since

2.2.0

object debug

This module contains the very useful debugging combinator, as well as breakpoints.

This module contains the very useful debugging combinator, as well as breakpoints.

object io

This module contains utilities to have parsers interact with IO, including the very useful parseFromFile method (exposed by ParseFromIO)

This module contains utilities to have parsers interact with IO, including the very useful parseFromFile method (exposed by ParseFromIO)

Since

3.0.0

object lift

This module contains lift1 through lift22, which allow for the application of a FunctionN to N parsers for example:

This module contains lift1 through lift22, which allow for the application of a FunctionN to N parsers for example:

Since

2.2.0

Example
lift2[Int, Int, Int](_+_, px, py): Parsley[Int]
lift3((x: Int, y: Int, z: Int) => x + y + z, px, py, pz): Parsley[Int]
object registers

This module contains all the functionality and operations for using and manipulating registers.

This module contains all the functionality and operations for using and manipulating registers.

Since

2.2.0

object unsafe

This module contains various things that shouldn't be used without care and caution

This module contains various things that shouldn't be used without care and caution

Since

1.6.0