peg lexer changes

db4
Sam Anklesaria 2009-04-24 23:23:02 -05:00
parent 22d14b036a
commit b31f8a0d15
1 changed files with 4 additions and 3 deletions

View File

@ -1,5 +1,6 @@
USING: hashtables assocs sequences locals math accessors multiline delegate strings
delegate.protocols kernel peg peg.ebnf lexer namespaces combinators parser words ;
delegate.protocols kernel peg peg.ebnf peg.private lexer namespaces combinators parser
words ;
IN: peg-lexer
TUPLE: lex-hash hash ;
@ -43,11 +44,11 @@ M: lex-hash at*
: parse* ( parser -- ast )
compile
[ execute( -- result ) [ error-stack get first throw ] unless* ] with-global-lexer
[ execute [ error-stack get first throw ] unless* ] with-global-lexer
ast>> ;
: create-bnf ( name parser -- )
reset-tokenizer [ lexer get skip-blank parse* parsed ] curry
reset-tokenizer [ lexer get skip-blank parse* dup ignore? [ drop ] [ parsed ] if ] curry
define-syntax ;
SYNTAX: ON-BNF: