add 2seq, 3seq
parent
75a2838a7c
commit
11147c7bc0
|
@ -306,6 +306,12 @@ MEMO: range ( min max -- parser )
|
||||||
: seq ( seq -- parser )
|
: seq ( seq -- parser )
|
||||||
seq-parser construct-boa init-parser ;
|
seq-parser construct-boa init-parser ;
|
||||||
|
|
||||||
|
: 2seq ( parser1 parser2 -- parser )
|
||||||
|
2array seq ;
|
||||||
|
|
||||||
|
: 3seq ( parser1 parser2 parser3 -- parser )
|
||||||
|
3array seq ;
|
||||||
|
|
||||||
: seq* ( quot -- paser )
|
: seq* ( quot -- paser )
|
||||||
{ } make seq ; inline
|
{ } make seq ; inline
|
||||||
|
|
||||||
|
@ -343,7 +349,7 @@ MEMO: delay ( parser -- parser )
|
||||||
delay-parser construct-boa init-parser ;
|
delay-parser construct-boa init-parser ;
|
||||||
|
|
||||||
MEMO: list-of ( items separator -- parser )
|
MEMO: list-of ( items separator -- parser )
|
||||||
hide over 2array seq repeat0 [ concat ] action 2array seq [ unclip 1vector swap first append ] action ;
|
hide over 2seq repeat0 [ concat ] action 2seq [ unclip 1vector swap first append ] action ;
|
||||||
|
|
||||||
MEMO: 'digit' ( -- parser )
|
MEMO: 'digit' ( -- parser )
|
||||||
[ digit? ] satisfy [ digit> ] action ;
|
[ digit? ] satisfy [ digit> ] action ;
|
||||||
|
|
Loading…
Reference in New Issue