equal
deleted
inserted
replaced
14 val is_regular: token -> bool |
14 val is_regular: token -> bool |
15 val is_improper: token -> bool |
15 val is_improper: token -> bool |
16 val pos_of: token -> string |
16 val pos_of: token -> string |
17 val kind_of: token -> token_kind |
17 val kind_of: token -> token_kind |
18 val content_of: token -> string |
18 val content_of: token -> string |
|
19 val markup_of: token -> Markup.T |
|
20 val report_token: token -> unit |
19 val keywords: string list |
21 val keywords: string list |
20 val scan_antiq: Symbol_Pos.T list -> token Antiquote.antiquote * Symbol_Pos.T list |
22 val scan_antiq: Symbol_Pos.T list -> token Antiquote.antiquote * Symbol_Pos.T list |
21 val source: (Symbol.symbol, 'a) Source.source -> |
23 val source: (Symbol.symbol, 'a) Source.source -> |
22 (token, (Symbol_Pos.T, Position.T * (Symbol.symbol, 'a) Source.source) |
24 (token, (Symbol_Pos.T, Position.T * (Symbol.symbol, 'a) Source.source) |
23 Source.source) Source.source |
25 Source.source) Source.source |
70 | is_regular _ = true; |
72 | is_regular _ = true; |
71 |
73 |
72 fun is_improper (Token (_, (Space, _))) = true |
74 fun is_improper (Token (_, (Space, _))) = true |
73 | is_improper (Token (_, (Comment, _))) = true |
75 | is_improper (Token (_, (Comment, _))) = true |
74 | is_improper _ = false; |
76 | is_improper _ = false; |
|
77 |
|
78 |
|
79 (* markup *) |
|
80 |
|
81 val markup_of = kind_of #> |
|
82 (fn Keyword => Markup.ML_keyword |
|
83 | Ident => Markup.ML_ident |
|
84 | LongIdent => Markup.ML_ident |
|
85 | TypeVar => Markup.ML_tvar |
|
86 | Word => Markup.ML_numeral |
|
87 | Int => Markup.ML_numeral |
|
88 | Real => Markup.ML_numeral |
|
89 | Char => Markup.ML_char |
|
90 | String => Markup.ML_string |
|
91 | Space => Markup.none |
|
92 | Comment => Markup.ML_comment |
|
93 | Error _ => Markup.ML_malformed |
|
94 | EOF => Markup.none); |
|
95 |
|
96 fun report_token tok = Position.report (markup_of tok) (position_of tok); |
75 |
97 |
76 |
98 |
77 |
99 |
78 (** scanners **) |
100 (** scanners **) |
79 |
101 |