factor/extra/xmode/tokens/tokens.factor

22 lines
540 B
Factor
Raw Normal View History

USING: parser words sequences namespaces kernel assocs ;
IN: xmode.tokens
! Based on org.gjt.sp.jedit.syntax.Token
SYMBOL: tokens
: string>token ( string -- id ) tokens get at ;
: TOKENS:
";" parse-tokens [
create-in dup define-symbol
dup word-name swap
] H{ } map>assoc tokens set-global ; parsing
TOKENS: COMMENT1 COMMENT2 COMMENT3 COMMENT4 DIGIT FUNCTION
INVALID KEYWORD1 KEYWORD2 KEYWORD3 KEYWORD4 LABEL LITERAL1
LITERAL2 LITERAL3 LITERAL4 MARKUP OPERATOR END NULL ;
TUPLE: token str id ;
C: <token> token