23 |
getS: pos * (string * pos * pos -> lexresult) -> lexresult, |
getS: pos * (string * pos * pos -> lexresult) -> lexresult, |
24 |
handleEof: unit -> pos, |
handleEof: unit -> pos, |
25 |
newline: pos -> unit, |
newline: pos -> unit, |
26 |
|
obsolete: pos * pos -> unit, |
27 |
error: pos * pos -> string -> unit, |
error: pos * pos -> string -> unit, |
28 |
sync: pos * string -> unit |
sync: pos * string -> unit |
29 |
} |
} |
107 |
newS, addS, addSC, addSN, getS, |
newS, addS, addSC, addSN, getS, |
108 |
handleEof, |
handleEof, |
109 |
newline, |
newline, |
110 |
|
obsolete, |
111 |
error, |
error, |
112 |
sync }); |
sync }); |
113 |
|
|
199 |
<P>"-" => (Tokens.MINUS (yypos, yypos + 1)); |
<P>"-" => (Tokens.MINUS (yypos, yypos + 1)); |
200 |
<P>"*" => (Tokens.TIMES (yypos, yypos + 1)); |
<P>"*" => (Tokens.TIMES (yypos, yypos + 1)); |
201 |
<P>"<>" => (Tokens.NE (yypos, yypos + 2)); |
<P>"<>" => (Tokens.NE (yypos, yypos + 2)); |
202 |
|
<P>"!=" => (obsolete (yypos, yypos + 2); |
203 |
|
Tokens.NE (yypos, yypos+2)); |
204 |
<P>"<=" => (Tokens.LE (yypos, yypos + 2)); |
<P>"<=" => (Tokens.LE (yypos, yypos + 2)); |
205 |
<P>"<" => (Tokens.LT (yypos, yypos + 1)); |
<P>"<" => (Tokens.LT (yypos, yypos + 1)); |
206 |
<P>">=" => (Tokens.GE (yypos, yypos + 2)); |
<P>">=" => (Tokens.GE (yypos, yypos + 2)); |
207 |
<P>">" => (Tokens.GT (yypos, yypos + 1)); |
<P>">" => (Tokens.GT (yypos, yypos + 1)); |
208 |
|
<P>"==" => (obsolete (yypos, yypos + 2); |
209 |
|
Tokens.EQ (yypos, yypos + 2)); |
210 |
<P>"=" => (Tokens.EQ (yypos, yypos + 1)); |
<P>"=" => (Tokens.EQ (yypos, yypos + 1)); |
211 |
<P>"~" => (Tokens.TILDE (yypos, yypos + 1)); |
<P>"~" => (Tokens.TILDE (yypos, yypos + 1)); |
212 |
|
|
220 |
|
|
221 |
<P>{id} => (idToken (yytext, yypos, pp_ids, Tokens.CM_ID, |
<P>{id} => (idToken (yytext, yypos, pp_ids, Tokens.CM_ID, |
222 |
fn () => YYBEGIN PM)); |
fn () => YYBEGIN PM)); |
223 |
|
<P>"/" => (obsolete (yypos, yypos + 1); |
224 |
|
Tokens.DIV (yypos, yypos + 1)); |
225 |
|
<P>"%" => (obsolete (yypos, yypos + 1); |
226 |
|
Tokens.MOD (yypos, yypos + 1)); |
227 |
|
<P>"&&" => (obsolete (yypos, yypos + 2); |
228 |
|
Tokens.ANDALSO (yypos, yypos + 2)); |
229 |
|
<P>"||" => (obsolete (yypos, yypos + 2); |
230 |
|
Tokens.ORELSE (yypos, yypos + 2)); |
231 |
|
<P>"!" => (obsolete (yypos, yypos + 1); |
232 |
|
Tokens.NOT (yypos, yypos + 1)); |
233 |
|
|
234 |
<M>({id}|{sym}+) => (YYBEGIN INITIAL; |
<M>({id}|{sym}+) => (YYBEGIN INITIAL; |
235 |
Tokens.ML_ID (yytext, yypos, yypos + size yytext)); |
Tokens.ML_ID (yytext, yypos, yypos + size yytext)); |