factor out tuple literal slot parsing from the rest of tuple literal parsing

db4
Joe Groff 2009-04-26 15:59:26 -05:00
parent 06012cf291
commit 0d03dea74b
1 changed files with 5 additions and 2 deletions

View File

@ -89,11 +89,14 @@ ERROR: bad-literal-tuple ;
swap [ [ slot-named offset>> 2 - ] curry dip ] curry assoc-map swap [ [ slot-named offset>> 2 - ] curry dip ] curry assoc-map
[ dup <enum> ] dip update boa>tuple ; [ dup <enum> ] dip update boa>tuple ;
: parse-tuple-literal ( -- tuple ) : parse-tuple-literal-slots ( class -- tuple )
scan-word scan { scan {
{ f [ unexpected-eof ] } { f [ unexpected-eof ] }
{ "f" [ \ } parse-until boa>tuple ] } { "f" [ \ } parse-until boa>tuple ] }
{ "{" [ parse-slot-values assoc>tuple ] } { "{" [ parse-slot-values assoc>tuple ] }
{ "}" [ new ] } { "}" [ new ] }
[ bad-literal-tuple ] [ bad-literal-tuple ]
} case ; } case ;
: parse-tuple-literal ( -- tuple )
scan-word parse-tuple-literal-slots ;