parsers
nom.parsers
nom.parsers -- namespace for parser combinators and parsers built with nom
Constructors
(name String, attributes container.Map String String, data Sequence (choice nom.parsers.xml_node String)):Any is¶
(name String, attributes container.Map String String, data Sequence (choice nom.parsers.xml_node String))
:
Any is
¶an deserialized xml node
Functions
return result of first succeeding parser
(I type, O1 type, O2 type, O3 type, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2, p3 nom.this.Parser I I O3) => nom.this.Parser I I O2¶
(I
type
, O1 type
, O2 type
, O3 type
, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2, p3 nom.this.Parser I I O3) =>
nom.this.Parser I I O2¶discard p1 and p3, return result of p2
match one or more digits
a json parser
NYI: UNDER DEVELOPMENT: incomplete
NYI: PERFORMANCE: not yet optimized
Specification: https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf
NYI: UNDER DEVELOPMENT: incomplete
NYI: PERFORMANCE: not yet optimized
Specification: https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf
apply parser multiple times, return results as sequence
apply parser at least once, return results as sequence
apply parser between m and n times, return results as sequence
(I type, O1 type, O2 type, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2) => nom.this.Parser I I O2¶
(I
type
, O1 type
, O2 type
, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2) =>
nom.this.Parser I I O2¶discard the output of the first parser, return the result of the second parser
(I type, O type, D type, p_sep nom.this.Parser I I D, p_value nom.this.Parser I I O) => nom.this.Parser I I (Sequence O)¶
(I
type
, O type
, D type
, p_sep nom.this.Parser I I D, p_value nom.this.Parser I I O) =>
nom.this.Parser I I (Sequence O)¶parse a separated list of values, zero or more values
(I type, O type, D type, p_sep nom.this.Parser I I D, p_value Function (nom.this.Parser I I O)) => nom.this.Parser I I (Sequence O)¶
(I
type
, O type
, D type
, p_sep nom.this.Parser I I D, p_value Function (nom.this.Parser I I O)) =>
nom.this.Parser I I (Sequence O)¶parse a separated list of values, one or more values
(I type, R1 type, R2 type, R3 type, O1 type, O2 type, O3 type, p1 nom.this.Parser I R1 O1, p_sep nom.this.Parser R1 R2 O2, p2 Function (nom.this.Parser R2 R3 O3)) => nom.this.Parser I R3 (tuple O1 O3)¶
(I
type
, R1 type
, R2 type
, R3 type
, O1 type
, O2 type
, O3 type
, p1 nom.this.Parser I R1 O1, p_sep nom.this.Parser R1 R2 O2, p2 Function (nom.this.Parser R2 R3 O3)) =>
nom.this.Parser I R3 (tuple O1 O3)¶return result of p1 and p2 as tuple, drop result of p_sep
match str
take while cond is satisfied
take while cond is satisfied, at least once
(T type, m i32, n i32, cond Unary bool T) => nom.this.Parser (Sequence T) (Sequence T) (Sequence T)¶
(T
type
, m i32, n i32, cond Unary bool T) =>
nom.this.Parser (Sequence T) (Sequence T) (Sequence T)¶matches input as often as possible but at least m times and at most n times.
convert a parser taking a sequence of codepoints to a parser that takes a string
convert a parser returning a sequence of codepoints to a parser that returns a string
convert a parser taking and returning to codepoints to a parser taking and returning a string
(I type, O1 type, O2 type, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2) => nom.this.Parser I I (tuple O1 O2)¶
(I
type
, O1 type
, O2 type
, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2) =>
nom.this.Parser I I (tuple O1 O2)¶apply p1 then p2 and return their results as a tuple.
(I type, O1 type, O2 type, O3 type, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2, p3 nom.this.Parser I I O3) => nom.this.Parser I I (tuple O1 O2 O3)¶
(I
type
, O1 type
, O2 type
, O3 type
, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2, p3 nom.this.Parser I I O3) =>
nom.this.Parser I I (tuple O1 O2 O3)¶apply p1 then p2 then p3 and return their results as a tuple.
(I type, O1 type, O2 type, O3 type, O4 type, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2, p3 nom.this.Parser I I O3, p4 nom.this.Parser I I O4) => nom.this.Parser I I (tuple O1 O2 O3 O4)¶
(I
type
, O1 type
, O2 type
, O3 type
, O4 type
, p1 nom.this.Parser I I O1, p2 nom.this.Parser I I O2, p3 nom.this.Parser I I O3, p4 nom.this.Parser I I O4) =>
nom.this.Parser I I (tuple O1 O2 O3 O4)¶apply p1 then p2 then p3, then p4 and return their results as a tuple.
match zero or more whitespace
xml parser
NYI: UNDER DEVELOPMENT: incomplete! can only parse small subset of xml
usage : NYI: UNDER DEVELOPMENT:
Specification: https://www.w3.org/TR/REC-xml/
NYI: UNDER DEVELOPMENT: incomplete! can only parse small subset of xml
usage : NYI: UNDER DEVELOPMENT:
Specification: https://www.w3.org/TR/REC-xml/
Choice Types
json supports the following types: strings, numbers, booleans, null, arrays and objects
0.095dev (GIT hash b85caf7d9723bbbca0d1dcdfa7ea0cb016405931)