parser-combinators vocabulary
Factor handbook > Vocabulary index


Summary
Haskell-style lazy parser combinators

Meta-data
Tags:parsing
Authors:Chris Double


Words

Tuple classes
ClassSuperclassSlots
and-parser tupleparsers
apply-parser tuplep1 quot
cannot-parse tupleinput
ensure-not-parser tupletest
ensure-parser tupletest
epsilon-parser tuple
fail-parser tuple
just-parser tuplep1
only-first-parser tuplep1
or-parser tupleparsers
parse-result tupleparsed unparsed
satisfy-parser tuplequot
some-parser tuplep1
sp-parser tuplep1
succeed-parser tupleresult
token-parser tuplestring ignore-case?


Generic words
WordStack effect
parse( input parser -- list )


Ordinary words
WordStack effect
&>( parser1 parser2 -- parser )
1token( n -- parser )
<!*>( parser -- parser )
<!+>( parser -- parser )
<!?>( parser -- parser )
<&( parser1 parser2 -- parser )
<&:>( parser1 parser2 -- result )
<&>( parser1 parser2 -- parser )
<(*)>( parser -- parser )
<(+)>( parser -- parser )
<(?)>( parser -- parser )
<*>( parser -- parser )
<+>( parser -- parser )
<:&:>( parser1 parser2 -- result )
<:&>( parser1 parser2 -- result )
<?>( parser -- parser )
<@( p1 quot -- apply-parser )
<and-parser>( parsers -- parser )
<or-parser>( parsers -- parser )
<parse-result>( parsed unparsed -- parse-result )
<parse-results>( parsed unparsed -- list )
<token-parser>( string ignore-case? -- token-parser )
<|>( parser1 parser2 -- parser )
?string-head( str head ignore-case -- newstr ? )
and-parser-parse( list p1 -- list )
any-char-parser( -- parser )
at-least-n( parser n -- parser' )
at-most-n( parser n -- parser' )
cannot-parse( input -- * )
case-insensitive-token( string -- parser )
ensure( parser -- ensure )
ensure-not( parser -- ensure )
epsilon( -- epsilon-parser )
exactly-n( parser n -- parser' )
fail( -- fail-parser )
from-m-to-n( parser m n -- parser' )
just( p1 -- just-parser )
list-of( items separator -- parser )
nonempty-list-of( items separator -- parser )
only-first( parser -- parser )
pack( close body open -- parser )
parse-1( input parser -- result )
parse-result-parsed-slice( parse-result -- slice )
satisfy( quot -- satisfy-parser )
some( p1 -- some-parser )
sp( p1 -- sp-parser )
string-head?( str head ignore-case -- ? )
string=( str1 str2 ignore-case -- ? )
succeed( result -- succeed-parser )
surrounded-by( parser start end -- parser' )
token( string -- parser )
trim-head-slice( string -- string )


Class predicate words
WordStack effect
and-parser?( object -- ? )
apply-parser?( object -- ? )
cannot-parse?( object -- ? )
ensure-not-parser?( object -- ? )
ensure-parser?( object -- ? )
epsilon-parser?( object -- ? )
fail-parser?( object -- ? )
just-parser?( object -- ? )
only-first-parser?( object -- ? )
or-parser?( object -- ? )
parse-result?( object -- ? )
satisfy-parser?( object -- ? )
some-parser?( object -- ? )
sp-parser?( object -- ? )
succeed-parser?( object -- ? )
token-parser?( object -- ? )


Files


Children from resource:extra
VocabularySummary
parser-combinators.simpleparser-combinators.simple vocabulary