[/] [trunk/] [src/] [cmdlang/] [cmdlang.lex] - Diff 7 ⟶ 17

Diff between revs 7 and 17
Rev 7 Rev 17
Line 1... Line 1...
(* $Id: cmdlang.lex 7 2007-10-31 05:39:12Z tbourke $ *)
(* $Id: cmdlang.lex 17 2007-11-09 10:24:48Z tbourke $ *)
 
 
(* Type abbreviations to match signature for ML-Yacc *)
(* Type abbreviations to match signature for ML-Yacc *)
structure Tokens = Tokens
structure Tokens = Tokens
type pos = FilePos.pos
type pos = FilePos.pos
type svalue = Tokens.svalue
type svalue = Tokens.svalue
Line 27... Line 27...
  KeywordFn (type token=(svalue, pos) token
  KeywordFn (type token=(svalue, pos) token
             type pos=pos
             type pos=pos
             val ident=Tokens.ID
             val ident=Tokens.ID
             val keywords= [
             val keywords= [
                ("acceptall", Tokens.ACCEPTALL),
                ("acceptall", Tokens.ACCEPTALL),
 
                ("actions",   Tokens.ACTIONS),
                ("channels",  Tokens.CHANNELS),
                ("channels",  Tokens.CHANNELS),
                ("conflate",  Tokens.CONFLATE),
                ("conflate",  Tokens.CONFLATE),
                ("drop",      Tokens.DROP),
                ("drop",      Tokens.DROP),
                ("help",      Tokens.HELP),
                ("help",      Tokens.HELP),
                ("list",      Tokens.LIST),
                ("list",      Tokens.LIST),
 
                ("makemcs51", Tokens.MAKEMCS51),
                ("maketest",  Tokens.MAKETEST),
                ("maketest",  Tokens.MAKETEST),
                ("names",     Tokens.NAMES),
 
                ("parameters",Tokens.PARAMETERS),
                ("parameters",Tokens.PARAMETERS),
                ("renamelocs",Tokens.RENAMELOCS),
                ("renamelocs",Tokens.RENAMELOCS),
                ("renametrans",Tokens.RENAMETRANS),
                ("renametrans",Tokens.RENAMETRANS),
                ("scale",     Tokens.SCALE),
                ("scale",     Tokens.SCALE),
                ("setinitial",Tokens.SETINITIAL),
                ("setinitial",Tokens.SETINITIAL),
Line 66... Line 67...
<INITIAL>("list"|"show"|"writegraphics"|"quit"|"drop"|"help")
<INITIAL>("list"|"show"|"writegraphics"|"quit"|"drop"|"help")
                   => (Keyword.keyword (yytext,
                   => (Keyword.keyword (yytext,
                                        FilePos.currpos (yyarg, yypos),
                                        FilePos.currpos (yyarg, yypos),
                         FilePos.currpos (yyarg,
                         FilePos.currpos (yyarg,
                                           yypos + String.size yytext - 1)));
                                           yypos + String.size yytext - 1)));
<INITIAL>{alpha}+{ws}*\(
<INITIAL>{alpha}({alpha}|{digit})*{ws}*\(
                   => (Keyword.keyword (stripParen(yytext),
                   => (Keyword.keyword (stripParen(yytext),
                                        FilePos.currpos (yyarg, yypos),
                                        FilePos.currpos (yyarg, yypos),
                         FilePos.currpos (yyarg,
                         FilePos.currpos (yyarg,
                                           yypos + String.size yytext - 1)));
                                           yypos + String.size yytext - 1)));