equal
deleted
inserted
replaced
3 Author : David von Oheimb |
3 Author : David von Oheimb |
4 Copyright 1995, 1996 TU Muenchen |
4 Copyright 1995, 1996 TU Muenchen |
5 |
5 |
6 parser for domain section |
6 parser for domain section |
7 *) |
7 *) |
8 |
|
9 |
|
10 structure ThySynData: THY_SYN_DATA = (* overwrites old version of ThySynData !!!!!! *) |
|
11 |
|
12 struct |
|
13 |
8 |
14 local |
9 local |
15 open ThyParse; |
10 open ThyParse; |
16 open Domain_Library; |
11 open Domain_Library; |
17 |
12 |
155 val domain_decl = (enum1 "," (con_typ --$$ "=" -- !! |
150 val domain_decl = (enum1 "," (con_typ --$$ "=" -- !! |
156 (enum1 "|" domain_cons))) >> mk_domain; |
151 (enum1 "|" domain_cons))) >> mk_domain; |
157 val gen_by_decl = (optional ($$ "finite" >> K true) false) -- |
152 val gen_by_decl = (optional ($$ "finite" >> K true) false) -- |
158 (enum1 "," (name' --$$ "by" -- !! |
153 (enum1 "," (name' --$$ "by" -- !! |
159 (enum1 "|" name'))) >> mk_gen_by; |
154 (enum1 "|" name'))) >> mk_gen_by; |
|
155 |
|
156 val _ = ThySyn.add_syntax |
|
157 ["lazy", "by", "finite"] |
|
158 [("domain", domain_decl), ("generated", gen_by_decl)] |
|
159 |
160 end; (* local *) |
160 end; (* local *) |
161 |
|
162 val user_keywords = "lazy"::"by"::"finite":: |
|
163 (**)filter_out (fn s=>s="lazy" orelse s="by" orelse s="finite")(**) |
|
164 ThySynData.user_keywords; |
|
165 val user_sections = ("domain", domain_decl)::("generated", gen_by_decl):: |
|
166 (**)filter_out (fn (s,_)=>s="domain" orelse s="generated")(**) |
|
167 ThySynData.user_sections; |
|
168 end; (* struct *) |
|
169 |
|
170 structure ThySyn = ThySynFun(ThySynData); (* overwrites old version of ThySyn!!!!!! *) |
|