comparison src/source_print.sml @ 628:12b73f3c108e

Switch to TDisjoint from CDisjoint; still need to implement obligation generation at EDisjoint uses
author Adam Chlipala <adamc@hcoop.net>
date Tue, 24 Feb 2009 12:01:24 -0500
parents 588b9d16b00a
children e68de2a5506b
comparison
equal deleted inserted replaced
627:f4f2b09a533a 628:12b73f3c108e
96 space, 96 space,
97 p_con c]) xcs, 97 p_con c]) xcs,
98 string "}"] 98 string "}"]
99 | TRecord c => box [string "$", 99 | TRecord c => box [string "$",
100 p_con' true c] 100 p_con' true c]
101 | TDisjoint (c1, c2, c3) => parenIf par (box [string "[",
102 p_con c1,
103 space,
104 string "~",
105 space,
106 p_con c2,
107 string "]",
108 space,
109 string "=>",
110 space,
111 p_con c3])
101 112
102 | CVar (ss, s) => p_list_sep (string ".") string (ss @ [s]) 113 | CVar (ss, s) => p_list_sep (string ".") string (ss @ [s])
103 | CApp (c1, c2) => parenIf par (box [p_con c1, 114 | CApp (c1, c2) => parenIf par (box [p_con c1,
104 space, 115 space,
105 p_con' true c2]) 116 p_con' true c2])
119 p_kind k, 130 p_kind k,
120 space, 131 space,
121 string "=>", 132 string "=>",
122 space, 133 space,
123 p_con c]) 134 p_con c])
124 | CDisjoint (c1, c2, c3) => parenIf par (box [p_con c1, 135
125 space,
126 string "~",
127 space,
128 p_con c2,
129 space,
130 string "=>",
131 space,
132 p_con c3])
133 136
134 | CName s => box [string "#", string s] 137 | CName s => box [string "#", string s]
135 138
136 | CRecord xcs => box [string "[", 139 | CRecord xcs => box [string "[",
137 p_list (fn (x, c) => 140 p_list (fn (x, c) =>