jaskell.parsec

Members list

Concise view

Type members

Classlikes

case class Ahead[E, T](parser: Parsec[E, T]) extends Parsec[E, T]

Ahead use a parser to parse state, return the result and rollback whatever

Ahead use a parser to parse state, return the result and rollback whatever

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, T]
class Object
trait Matchable
class Any
object Atom

Atom parsers, like one, eof, return and failed, equals and not equals, etc.

Atom parsers, like one, eof, return and failed, equals and not equals, etc.

Attributes

Version:

1.0.0

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Atom.type
case class Attempt[E, T](parsec: Parsec[E, T]) extends Parsec[E, T]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, T]
class Object
trait Matchable
class Any
case class Between[E, T](open: Parsec[E, _], close: Parsec[E, _], parsec: Parsec[E, T]) extends Parsec[E, T]

Between parse the open parser, and then sub parser, and then close parser, return sub parser result if success.

Between parse the open parser, and then sub parser, and then close parser, return sub parser result if success.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, T]
class Object
trait Matchable
class Any
object Between

Attributes

Companion:
class
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Between.type
class Binder[A, B, C](val parsec: Parsec[A, B], val f: B => Parsec[A, C]) extends Parsec[A, C]

Attributes

Graph
Supertypes
trait Parsec[A, C]
class Object
trait Matchable
class Any
case class Ch(char: Char, caseSensitive: Boolean) extends Parsec[Char, Char]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
case class ChIn(content: String, caseSensitive: Boolean) extends Parsec[Char, Char]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
case class ChNone(content: String, caseSensitive: Boolean) extends Parsec[Char, Char]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
case class Chars1In(elements: String, caseSensitive: Boolean) extends Parsec[Char, String]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2022/05/06 00:59

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, String]
class Object
trait Matchable
class Any
case class CharsIn(elements: String, caseSensitive: Boolean) extends Parsec[Char, String]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2022/05/06 00:59

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, String]
class Object
trait Matchable
class Any
case class Choice[E, T](parsecs: Seq[Parsec[E, T]]) extends Parsec[E, T]

Choice just the operator <|> in Haskell parsec

Choice just the operator <|> in Haskell parsec

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, T]
class Object
trait Matchable
class Any
object Combinator

Parsec Combinators

Parsec Combinators

Attributes

Version:

1.0.0

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
case class Combine2[A, B](left: Parsec[A, B], right: Parsec[A, B]) extends Parsec[A, B]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[A, B]
class Object
trait Matchable
class Any
class CommonState[T](val content: Seq[T]) extends State[T]

Common State has int status and transaction market. It can apply to Seq[T] or any serial collection.

Common State has int status and transaction market. It can apply to Seq[T] or any serial collection.

Attributes

Version:

1.0.0

Graph
Supertypes
trait State[T]
class Object
trait Matchable
class Any
Known subtypes
class TxtState
trait Config

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object stateConfig.type
case class Cons[A, B, C](prev: Parsec[A, B], next: Parsec[A, C]) extends Parsec[A, C]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[A, C]
class Object
trait Matchable
class Any
case class Count[E, T](p: Parsec[E, T], n: Int) extends Parsec[E, Seq[T]]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
case class Crlf(r: Ch, n: Ch) extends Parsec[Char, String]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, String]
class Object
trait Matchable
class Any
class Decimal extends Parsec[Char, String]

Attributes

Graph
Supertypes
trait Parsec[Char, String]
class Object
trait Matchable
class Any
class Digit extends Parsec[Char, Char]

Attributes

Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
case class EndBy[E, T](parser: Parsec[E, T], sep: Parsec[E, _]) extends Parsec[E, Seq[T]]

EndBy p sep parses zero or more occurrences of p, separated and ended by sep. Returns a seq of values returned by p.

EndBy p sep parses zero or more occurrences of p, separated and ended by sep. Returns a seq of values returned by p.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
class EndBy1[E, T](val parser: Parsec[E, T], val sep: Parsec[E, _]) extends Parsec[E, Seq[T]]

EndBy1 p sep parses one or more occurrences of p, separated and ended by sep. Returns a seq of values returned by p.

EndBy1 p sep parses one or more occurrences of p, separated and ended by sep. Returns a seq of values returned by p.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
object EndBy1

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
EndBy1.type
class EndOfLine extends Parsec[Char, String]

check next content if a \n char or \r\n

check next content if a \n char or \r\n

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, String]
class Object
trait Matchable
class Any
object EndOfLine

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class Eof[E] extends Parsec[E, Unit]

Attributes

Companion:
object
Graph
Supertypes
trait Parsec[E, Unit]
class Object
trait Matchable
class Any
object Eof

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Eof.type
case class Eq[A](x: A) extends Parsec[A, A]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[A, A]
class Object
trait Matchable
class Any
case class Find[E, T](psc: Parsec[E, T]) extends Parsec[E, T]

Find try and next util success or eof.

Find try and next util success or eof.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, T]
class Object
trait Matchable
class Any
object Find

Attributes

Companion:
class
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Find.type
case class Int(sign: Parsec[Char, Char], uint: Parsec[Char, String]) extends Parsec[Char, String]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, String]
class Object
trait Matchable
class Any
class Is[T](val predicate: T => Boolean) extends Parsec[T, T]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2020/07/23 14:18

Graph
Supertypes
trait Parsec[T, T]
class Object
trait Matchable
class Any
class Letter extends Parsec[Char, Char]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2020/06/12 18:53

Companion:
object
Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
object Letter

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Letter.type
case class Many[E, T](parsec: Parsec[E, T]) extends Parsec[E, Seq[T]]

Many try to parse the parse more times, and collect all results into a Seq. Many could success 0 to any times.

Many try to parse the parse more times, and collect all results into a Seq. Many could success 0 to any times.

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
case class Many1[E, T](parsec: Parsec[E, T]) extends Parsec[E, Seq[T]]

Many try to parse the parse more times, and collect all results into a Seq. Many must success once at lest

Many try to parse the parse more times, and collect all results into a Seq. Many must success once at lest

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
case class Many1In[E](toggle: Set[E]) extends Parsec[E, Seq[E]]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2022/05/06 00:47

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[E]]
class Object
trait Matchable
class Any
case class ManyIn[E](toggle: Set[E]) extends Parsec[E, Seq[E]]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2022/05/06 00:47

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[E]]
class Object
trait Matchable
class Any
class ManyTill[E, T, L](val parser: Parsec[E, T], val end: Parsec[E, L]) extends Parsec[E, Seq[T]]

manyTill p end applies parser p zero or more times until parser end succeeds. Returns the list of values returned by p. This parser can be used to scan comments.

manyTill p end applies parser p zero or more times until parser end succeeds. Returns the list of values returned by p. This parser can be used to scan comments.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
object ManyTill

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class NCh(val char: Char, val caseSensitive: Boolean) extends Parsec[Char, Char]

Attributes

Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
case class Ne[A](x: A) extends Parsec[A, A]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[A, A]
class Object
trait Matchable
class Any
class Newline extends Parsec[Char, Char]

Newline match \n char

Newline match \n char

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
object Newline

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Newline.type
class NoWhitespace extends Parsec[Char, Char]

NoWhitespace success if the char is't any whitespace.

NoWhitespace success if the char is't any whitespace.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class NoneOf[E](val items: Set[E]) extends Parsec[E, E]

NoneOf success if get a item none of any in prepared

NoneOf success if get a item none of any in prepared

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[E, E]
class Object
trait Matchable
class Any
object NoneOf

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
NoneOf.type
class One[A] extends Parsec[A, A]

Attributes

Graph
Supertypes
trait Parsec[A, A]
class Object
trait Matchable
class Any
class OneOf[T](val items: Set[T]) extends Parsec[T, T]

OneOf success if item equals one of prepared.

OneOf success if item equals one of prepared.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[T, T]
class Object
trait Matchable
class Any
object OneOf

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
OneOf.type
class Opt[E, T](val p: Parsec[E, T], val otherwise: T) extends Parsec[E, T]

Opt x p tries to apply parser p. If p fails without consuming input, it returns the value x, otherwise the value returned by p.

Opt x p tries to apply parser p. If p fails without consuming input, it returns the value x, otherwise the value returned by p.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[E, T]
class Object
trait Matchable
class Any
object Opt

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Opt.type
case class Pack[E, T](value: T) extends Parsec[E, T]

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, T]
class Object
trait Matchable
class Any
object Pack

Attributes

Companion:
class
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Pack.type
trait Parsec[A, +B]

Attributes

Companion:
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class A
class D
class Num
class P
class Param
class Parser
class Q
class S
class Ahead[E, T]
class Attempt[E, T]
class Between[E, T]
class Binder[A, B, C]
class Ch
class ChIn
class ChNone
class Chars1In
class CharsIn
class Choice[E, T]
class Combine2[A, B]
class Cons[A, B, C]
class Count[E, T]
class Crlf
class Decimal
class Digit
class EndBy[E, T]
class EndBy1[E, T]
class EndOfLine
class Eof[E]
class Eq[A]
class Find[E, T]
class Int
class Is[T]
class Letter
class Many[E, T]
class Many1[E, T]
class Many1In[E]
class ManyIn[E]
class ManyTill[E, T, L]
class NCh
class Ne[A]
class Newline
class NoneOf[E]
class One[A]
class OneOf[T]
class Opt[E, T]
class Pack[E, T]
class ScNumber
class SepBy[E, T]
class SepBy1[E, T]
class SepEndBy[E, T]
class SepEndBy1[E, T]
class Skip[E]
class Skip1[E]
class Space
class Text
class UDecimal
class UInt
object Parsec

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Parsec.type
class ParsecException(val status: Any, val message: String) extends Exception

Parser throw ParsecException if failed.

Parser throw ParsecException if failed.

Attributes

Version:

1.0.0

Graph
Supertypes
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
class ScNumber extends Parsec[Char, String]

TODO

TODO

Attributes

Version:

1.0.0

Graph
Supertypes
trait Parsec[Char, String]
class Object
trait Matchable
class Any
case class SepBy[E, T](parsec: Parsec[E, T], by: Parsec[E, _]) extends Parsec[E, Seq[T]]

sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.

sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
case class SepBy1[E, T](parsec: Parsec[E, T], by: Parsec[E, _]) extends Parsec[E, Seq[T]]

SepBy1 p sep parses one or more occurrences of p, separated by sep. Returns a list of values returned by p.

SepBy1 p sep parses one or more occurrences of p, separated by sep. Returns a list of values returned by p.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
class SepEndBy[E, T](val parser: Parsec[E, T], val sep: Parsec[E, _]) extends Parsec[E, Seq[T]]

SepEndBy p sep parses zero or more occurrences of p, separated and optionally ended by sep, ie. haskell style statements. Returns a seq of values returned by p.

SepEndBy p sep parses zero or more occurrences of p, separated and optionally ended by sep, ie. haskell style statements. Returns a seq of values returned by p.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
class SepEndBy1[E, T](val parser: Parsec[E, T], val sep: Parsec[E, _]) extends Parsec[E, Seq[T]]

SepEndBy1 p sep parses one or more occurrences of p, separated and optionally ended by sep. Returns a list of values returned by p.

SepEndBy1 p sep parses one or more occurrences of p, separated and optionally ended by sep. Returns a list of values returned by p.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Parsec[E, Seq[T]]
class Object
trait Matchable
class Any
case class Skip[E](psc: Parsec[E, _]) extends Parsec[E, Unit]

Skip p applies the parser p zero or more times, skipping its result.

Skip p applies the parser p zero or more times, skipping its result.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Unit]
class Object
trait Matchable
class Any
case class Skip1[E](psc: Parsec[E, _]) extends Parsec[E, Unit]

Skip1 p applies the parser p one or more times, skipping its result.

Skip1 p applies the parser p one or more times, skipping its result.

Attributes

Version:

1.0.0

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[E, Unit]
class Object
trait Matchable
class Any
class Skip1Spaces extends Parsec[Char, Unit]

TODO

TODO

Attributes

Version:

1.0.0

Graph
Supertypes
trait Parsec[Char, Unit]
class Object
trait Matchable
class Any
class Skip1Whitespaces extends Parsec[Char, Unit]

TODO

TODO

Attributes

Version:

1.0.0

Graph
Supertypes
trait Parsec[Char, Unit]
class Object
trait Matchable
class Any
class SkipSpaces extends Parsec[Char, Unit]

TODO

TODO

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, Unit]
class Object
trait Matchable
class Any
object SkipSpaces

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class SkipWhitespaces extends Parsec[Char, Unit]

TODO

TODO

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, Unit]
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class Space extends Parsec[Char, Char]

TODO

TODO

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
object Space

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Space.type
trait State[+E]

Attributes

Companion:
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class CommonState[T]
class TxtState
object State

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
State.type
class Text(val text: String, val caseSensitive: Boolean) extends Parsec[Char, String]

TODO

TODO

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
trait Parsec[Char, String]
class Object
trait Matchable
class Any
object Text

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Text.type
object Txt

Functions Helper include parsers for Text

Functions Helper include parsers for Text

Attributes

Version:

1.0.0

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Txt.type
class TxtState(val txt: String, val newLine: Char) extends CommonState[Char]

Txt State extends Common State trait. It special for text content analyst. Txt state could mark a status point in which line.

Txt State extends Common State trait. It special for text content analyst. Txt state could mark a status point in which line.

Attributes

Version:

1.0.0

Companion:
object
Graph
Supertypes
class CommonState[Char]
trait State[Char]
class Object
trait Matchable
class Any
object TxtState

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
case class UDecimal(uint: UInt) extends Parsec[Char, String]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, String]
class Object
trait Matchable
class Any
case class UInt(digit: Digit) extends Parsec[Char, String]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Parsec[Char, String]
class Object
trait Matchable
class Any
class Whitespace extends Parsec[Char, Char]

TODO

TODO

Attributes

Version:

1.0.0

Since:

2020/05/09 17:18

Companion:
object
Graph
Supertypes
trait Parsec[Char, Char]
class Object
trait Matchable
class Any
object Whitespace

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Extensions

Extensions

extension [E, T](parsec: Parsec[E, T])
def ahead: Parsec[E, T]
def attempt: Parsec[E, T]
def between(open: Parsec[E, _], close: Parsec[E, _]): Parsec[E, T]
def find: Parsec[E, T]
def many: Parsec[E, Seq[T]]
def many1: Parsec[E, Seq[T]]
def manyTill(end: Parsec[E, _]): Parsec[E, Seq[T]]
def or(other: Parsec[E, T]): Parsec[E, T]
def sepBy(by: Parsec[E, _]): Parsec[E, Seq[T]]
def sepBy1(by: Parsec[E, _]): Parsec[E, Seq[T]]
def skip: Parsec[E, Unit]
def skip1: Parsec[E, Unit]