@@ -19,11 +19,6 @@ open Typedtree
19
19
type iterator = {
20
20
case : iterator -> case -> unit ;
21
21
cases : iterator -> case list -> unit ;
22
- class_description : iterator -> class_description -> unit ;
23
- class_signature : iterator -> class_signature -> unit ;
24
- class_type : iterator -> class_type -> unit ;
25
- class_type_declaration : iterator -> class_type_declaration -> unit ;
26
- class_type_field : iterator -> class_type_field -> unit ;
27
22
env : iterator -> Env .t -> unit ;
28
23
expr : iterator -> expression -> unit ;
29
24
extension_constructor : iterator -> extension_constructor -> unit ;
@@ -56,16 +51,11 @@ let structure sub {str_items; str_final_env; _} =
56
51
List. iter (sub.structure_item sub) str_items;
57
52
sub.env sub str_final_env
58
53
59
- let class_infos sub f x =
60
- List. iter (fun (ct , _ ) -> sub.typ sub ct) x.ci_params;
61
- f x.ci_expr
62
-
63
54
let module_type_declaration sub {mtd_type; _} =
64
55
Option. iter (sub.module_type sub) mtd_type
65
56
66
57
let module_declaration sub {md_type; _} = sub.module_type sub md_type
67
58
let include_infos f {incl_mod; _} = f incl_mod
68
- let class_type_declaration sub x = class_infos sub (sub.class_type sub) x
69
59
70
60
let structure_item sub {str_desc; str_env; _} =
71
61
sub.env sub str_env;
@@ -80,8 +70,7 @@ let structure_item sub {str_desc; str_env; _} =
80
70
| Tstr_recmodule list -> List. iter (sub.module_binding sub) list
81
71
| Tstr_modtype x -> sub.module_type_declaration sub x
82
72
| Tstr_class _ -> ()
83
- | Tstr_class_type list ->
84
- List. iter (fun (_ , _ , cltd ) -> sub.class_type_declaration sub cltd) list
73
+ | Tstr_class_type () -> ()
85
74
| Tstr_include incl -> include_infos (sub.module_expr sub) incl
86
75
| Tstr_open _ -> ()
87
76
| Tstr_attribute _ -> ()
@@ -153,9 +142,7 @@ let pat sub {pat_extra; pat_desc; pat_env; _} =
153
142
let expr sub {exp_extra; exp_desc; exp_env; _} =
154
143
let extra = function
155
144
| Texp_constraint cty -> sub.typ sub cty
156
- | Texp_coerce (cty1 , cty2 ) ->
157
- Option. iter (sub.typ sub) cty1;
158
- sub.typ sub cty2
145
+ | Texp_coerce (() , cty2 ) -> sub.typ sub cty2
159
146
| Texp_newtype _ -> ()
160
147
| Texp_poly cto -> Option. iter (sub.typ sub) cto
161
148
| Texp_open (_ , _ , _ , _ ) -> ()
@@ -245,12 +232,10 @@ let signature_item sub {sig_desc; sig_env; _} =
245
232
| Tsig_modtype x -> sub.module_type_declaration sub x
246
233
| Tsig_include incl -> include_infos (sub.module_type sub) incl
247
234
| Tsig_class () -> ()
248
- | Tsig_class_type list -> List. iter (sub.class_type_declaration sub) list
235
+ | Tsig_class_type () -> ()
249
236
| Tsig_open _od -> ()
250
237
| Tsig_attribute _ -> ()
251
238
252
- let class_description sub x = class_infos sub (sub.class_type sub) x
253
-
254
239
let module_type sub {mty_desc; mty_env; _} =
255
240
sub.env sub mty_env;
256
241
match mty_desc with
@@ -305,30 +290,6 @@ let module_expr sub {mod_desc; mod_env; _} =
305
290
306
291
let module_binding sub {mb_expr; _} = sub.module_expr sub mb_expr
307
292
308
- let class_type sub {cltyp_desc; cltyp_env; _} =
309
- sub.env sub cltyp_env;
310
- match cltyp_desc with
311
- | Tcty_signature csg -> sub.class_signature sub csg
312
- | Tcty_constr (_ , _ , list ) -> List. iter (sub.typ sub) list
313
- | Tcty_arrow (_ , ct , cl ) ->
314
- sub.typ sub ct;
315
- sub.class_type sub cl
316
- | Tcty_open (_ , _ , _ , _ , e ) -> sub.class_type sub e
317
-
318
- let class_signature sub {csig_self; csig_fields; _} =
319
- sub.typ sub csig_self;
320
- List. iter (sub.class_type_field sub) csig_fields
321
-
322
- let class_type_field sub {ctf_desc; _} =
323
- match ctf_desc with
324
- | Tctf_inherit ct -> sub.class_type sub ct
325
- | Tctf_val (_ , _ , _ , ct ) -> sub.typ sub ct
326
- | Tctf_method (_ , _ , _ , ct ) -> sub.typ sub ct
327
- | Tctf_constraint (ct1 , ct2 ) ->
328
- sub.typ sub ct1;
329
- sub.typ sub ct2
330
- | Tctf_attribute _ -> ()
331
-
332
293
let typ sub {ctyp_desc; ctyp_env; _} =
333
294
sub.env sub ctyp_env;
334
295
match ctyp_desc with
@@ -340,7 +301,7 @@ let typ sub {ctyp_desc; ctyp_env; _} =
340
301
| Ttyp_tuple list -> List. iter (sub.typ sub) list
341
302
| Ttyp_constr (_ , _ , list ) -> List. iter (sub.typ sub) list
342
303
| Ttyp_object (list , _ ) -> List. iter (sub.object_field sub) list
343
- | Ttyp_class (_ , _ , list ) -> List. iter (sub.typ sub) list
304
+ | Ttyp_class () -> ()
344
305
| Ttyp_alias (ct , _ ) -> sub.typ sub ct
345
306
| Ttyp_variant (list , _ , _ ) -> List. iter (sub.row_field sub) list
346
307
| Ttyp_poly (_ , ct ) -> sub.typ sub ct
@@ -371,11 +332,6 @@ let default_iterator =
371
332
{
372
333
case;
373
334
cases;
374
- class_description;
375
- class_signature;
376
- class_type;
377
- class_type_declaration;
378
- class_type_field;
379
335
env;
380
336
expr;
381
337
extension_constructor;
0 commit comments