@@ -33,12 +33,12 @@ generate n =
33
33
]
34
34
35
35
where
36
- vars = map char $ take n [' a' .. ]
36
+ vars = map ( \ c -> text [ ' _ ' ,c]) $ take n [' a' .. ]
37
37
varss = map (<> char ' s' ) vars
38
38
tuple xs = parens $ hsep $ punctuate comma xs
39
39
vtuple xs = parens $ sep $ punctuate comma xs
40
40
con s = text s <> char ' _' <> int n
41
- var c = text (c : " _" )
41
+ var c = text (' _ ' : c : " _" )
42
42
43
43
data_instance ty c
44
44
= hang (hsep [text " data instance" , text ty, tuple vars])
@@ -177,6 +177,9 @@ generate n =
177
177
<+> parens (var ' m' <> char ' +' <> var ' n' )
178
178
<+> sep (map (<> char ' \' ' ) varss))
179
179
180
+ gen_initialize rec
181
+ = (pat " MV" , mk_do [qM rec <+> vs | vs <- varss] empty)
182
+
180
183
gen_unsafeFreeze rec
181
184
= (pat " MV" ,
182
185
mk_do [vs <> char ' \' ' <+> text " <-" <+> qG rec <+> vs | vs <- varss]
@@ -224,7 +227,8 @@ generate n =
224
227
,(" basicSet" , gen_set)
225
228
,(" basicUnsafeCopy" , gen_unsafeCopy " MV" qM)
226
229
,(" basicUnsafeMove" , gen_unsafeMove)
227
- ,(" basicUnsafeGrow" , gen_unsafeGrow)]
230
+ ,(" basicUnsafeGrow" , gen_unsafeGrow)
231
+ ,(" basicInitialize" , gen_initialize)]
228
232
229
233
methods_Vector = [(" basicUnsafeFreeze" , gen_unsafeFreeze)
230
234
,(" basicUnsafeThaw" , gen_unsafeThaw)
0 commit comments