pub struct Parser[Token, Value]((Seq[Token]) -> (Value, Seq[Token])?)
fn[Token, A, B] Parser::and_then(self : Parser[Token, A], other : Parser[Token, B]) -> Parser[Token, (A, B)]
fn[Token, A, B] Parser::apply(self : Parser[Token, A], f : Parser[Token, (A) -> B]) -> Parser[Token, B]
fn[Token, A, B] Parser::between(self : Parser[Token, A], around : Parser[Token, B]) -> Parser[Token, A]
fn[Token, A] Parser::from_ref(self : @moonbitlang/core/ref.RefRef[Parser[Token, A]]) -> Parser[Token, A]
fn[Token, A, B] Parser::map(self : Parser[Token, A], f : (A) -> B) -> Parser[Token, B]
fn[Token, Value] Parser::new(f : (Seq[Token]) -> (Value, Seq[Token])?) -> Parser[Token, Value]
fn[Token, A, B] Parser::omit_first(parser : Parser[Token, (A, B)]) -> Parser[Token, B]
fn[Token, A, B] Parser::omit_second(parser : Parser[Token, (A, B)]) -> Parser[Token, A]
fn[Token, A] Parser::optional(self : Parser[Token, A]) -> Parser[Token, A?]
fn[Token, A] Parser::or_else(self : Parser[Token, A], other : Parser[Token, A]) -> Parser[Token, A]
fn[Token, A] Parser::or_others(self : Parser[Token, A], others : ArrayView[Parser[Token, A]]) -> Parser[Token, A]
#deprecated("use `Parser::run` instead")fn[Token, Value] Parser::parse(self : Parser[Token, Value], sequence : Seq[Token]) -> (Value, Seq[Token])?
fn[Token, A] Parser::repeat(self : Parser[Token, A]) -> Parser[Token, Array[A]]
fn[Token, A] Parser::repeat_0_to_n(self : Parser[Token, A], n : Int) -> Parser[Token, Array[A]]
fn[Token, A, B] Parser::repeat_0_to_n_with_sep(self : Parser[Token, A], n : Int, separator : Parser[Token, B]) -> Parser[Token, Array[A]]
fn[Token, A] Parser::repeat_n(self : Parser[Token, A], n : Int) -> Parser[Token, Array[A]]
fn[Token, A, B] Parser::repeat_n_with_sep(self : Parser[Token, A], n : Int, sep : Parser[Token, B]) -> Parser[Token, Array[A]]
fn[Token, A, B] Parser::repeat_with_sep(self : Parser[Token, A], separator : Parser[Token, B]) -> Parser[Token, Array[A]]
fn[Token, Value] Parser::run(self : Parser[Token, Value], sequence : Seq[Token]) -> (Value, Seq[Token])?
pub struct Seq[T](ArrayView[T])
impl Show for Seq[T]
fn[T : Show] output(self : Seq[T], log : &Logger) -> Unit
fn[T : Show] to_string(self : Seq[T]) -> String
impl Debug for Seq[T]
fn[T : Show] to_repr(self : Seq[T]) -> @moonbitlang/core/debug.ReprRepr
fn[T] Seq::default() -> Seq[T]
fn[T] Seq::from_array(array : ArrayView[T]) -> Seq[T]
fn[T] Seq::from_list(list : @moonbitlang/core/list.ListList[T]) -> Seq[T]
fn Seq::from_string(str : String) -> Seq[Char]
fn[T] Seq::is_empty(self : Seq[T]) -> Bool
fn[T] Seq::length(self : Seq[T]) -> Int
fn[T1, T2] Seq::map(seq : Seq[T1], f : (T1) -> T2) -> Seq[T2]
fn[T] Seq::new(view : ArrayView[T]) -> Seq[T]
fn Seq::peek_char(self : Seq[Char], n : Int) -> String?
fn[T] Seq::to_array(self : Seq[T]) -> Array[T]
fn[T] Seq::to_iter(self : Seq[T]) -> Iter[T]
fn[T] Seq::uncons(self : Seq[T]) -> (T, Seq[T])?
fn[Token, A, B, C] lift2(f : (A, B) -> C) -> ((Parser[Token, A], Parser[Token, B]) -> Parser[Token, C])
fn[A : Show] one_of(array : Array[A]) -> Parser[Char, A]
fn pchar(char : Char) -> Parser[Char, Char]
fn pchar_such_that(predicate : (Char) -> Bool) -> Parser[Char, Char]
fn[Token, A] pconst(a : A) -> Parser[Token, A]
let pdigit : Parser[Char, Int]
fn[Token, A] pfail() -> Parser[Token, A]
let pint : Parser[Char, Int]
let pint64 : Parser[Char, Int64]
fn pstring(string : String) -> Parser[Char, String]
fn[Token, Value] pvalue(predicate : (Token) -> Value?) -> Parser[Token, Value]
fn[Token, A] sequence(parsers : Array[Parser[Token, A]]) -> Parser[Token, Array[A]]
Install
An XML parsing library written in MoonBit that converts XML strings into structured data, supporting elements, attributes, comments, CDATA, and processing instructions.
Dependencies
Powered by MoonBit
© 2026 mooncakes.io