equal
deleted
inserted
replaced
277 Scan.max (op <= o pairself snd) scan_lit scan_val >> (fn (tk, s) => SOME (tk s)) || |
277 Scan.max (op <= o pairself snd) scan_lit scan_val >> (fn (tk, s) => SOME (tk s)) || |
278 scan_str >> (SOME o StrSy o implode_xstr) || |
278 scan_str >> (SOME o StrSy o implode_xstr) || |
279 Scan.one Symbol.is_blank >> K NONE; |
279 Scan.one Symbol.is_blank >> K NONE; |
280 in |
280 in |
281 (case Scan.error (Scan.finite Symbol.stopper (Scan.repeat scan_token)) chs of |
281 (case Scan.error (Scan.finite Symbol.stopper (Scan.repeat scan_token)) chs of |
282 (toks, []) => List.mapPartial I toks @ [EndToken] |
282 (toks, []) => map_filter I toks @ [EndToken] |
283 | (_, cs) => error ("Inner lexical error at: " ^ quote (implode cs))) |
283 | (_, cs) => error ("Inner lexical error at: " ^ quote (implode cs))) |
284 end; |
284 end; |
285 |
285 |
286 |
286 |
287 |
287 |