comparison src/tag.sml @ 721:9864b64b1700

Classes as optional arguments to Basis.tag
author Adam Chlipala <adamc@hcoop.net>
date Sun, 12 Apr 2009 14:19:15 -0400
parents 4a241d108a2c
children e0dd85ea58e1
comparison
equal deleted inserted replaced
720:acb8537f58f0 721:9864b64b1700
44 fun exp env (e, s) = 44 fun exp env (e, s) =
45 case e of 45 case e of
46 EApp ( 46 EApp (
47 (EApp ( 47 (EApp (
48 (EApp ( 48 (EApp (
49 (ECApp ( 49 (EApp (
50 (ECApp ( 50 (ECApp (
51 (ECApp ( 51 (ECApp (
52 (ECApp ( 52 (ECApp (
53 (ECApp ( 53 (ECApp (
54 (ECApp ( 54 (ECApp (
55 (ECApp ( 55 (ECApp (
56 (ECApp ( 56 (ECApp (
57 (EFfi ("Basis", "tag"), 57 (ECApp (
58 loc), given), _), absent), _), outer), _), inner), _), 58 (EFfi ("Basis", "tag"),
59 useOuter), _), useInner), _), bindOuter), _), bindInner), _), 59 loc), given), _), absent), _), outer), _), inner), _),
60 useOuter), _), useInner), _), bindOuter), _), bindInner), _),
61 class), _),
60 attrs), _), 62 attrs), _),
61 tag), _), 63 tag), _),
62 xml) => 64 xml) =>
63 (case attrs of 65 (case attrs of
64 (ERecord xets, _) => 66 (ERecord xets, _) =>
122 s xets 124 s xets
123 in 125 in
124 (EApp ( 126 (EApp (
125 (EApp ( 127 (EApp (
126 (EApp ( 128 (EApp (
127 (ECApp ( 129 (EApp (
128 (ECApp ( 130 (ECApp (
129 (ECApp ( 131 (ECApp (
130 (ECApp ( 132 (ECApp (
131 (ECApp ( 133 (ECApp (
132 (ECApp ( 134 (ECApp (
133 (ECApp ( 135 (ECApp (
134 (ECApp ( 136 (ECApp (
135 (EFfi ("Basis", "tag"), 137 (ECApp (
136 loc), given), loc), absent), loc), outer), loc), inner), loc), 138 (EFfi ("Basis", "tag"),
137 useOuter), loc), useInner), loc), bindOuter), loc), bindInner), loc), 139 loc), given), loc), absent), loc), outer), loc), inner), loc),
140 useOuter), loc), useInner), loc), bindOuter), loc), bindInner), loc),
141 class), loc),
138 (ERecord xets, loc)), loc), 142 (ERecord xets, loc)), loc),
139 tag), loc), 143 tag), loc),
140 xml), s) 144 xml), s)
141 end 145 end
142 | _ => (ErrorMsg.errorAt loc "Attribute record is too complex"; 146 | _ => (ErrorMsg.errorAt loc "Attribute record is too complex";