object ('a)
  method binding : Ast.binding -> Ast.binding
  method class_expr : Ast.class_expr -> Ast.class_expr
  method class_sig_item : Ast.class_sig_item -> Ast.class_sig_item
  method class_str_item : Ast.class_str_item -> Ast.class_str_item
  method class_type : Ast.class_type -> Ast.class_type
  method ctyp : Ast.ctyp -> Ast.ctyp
  method direction_flag : Ast.direction_flag -> Ast.direction_flag
  method expr : Ast.expr -> Ast.expr
  method ident : Ast.ident -> Ast.ident
  method list : ('-> '-> 'c) -> 'b list -> 'c list
  method loc : Ast.loc -> Ast.loc
  method match_case : Ast.match_case -> Ast.match_case
  method meta_bool : Ast.meta_bool -> Ast.meta_bool
  method meta_list : ('-> '-> 'e) -> 'Ast.meta_list -> 'Ast.meta_list
  method meta_option :
    ('-> '-> 'g) -> 'Ast.meta_option -> 'Ast.meta_option
  method module_binding : Ast.module_binding -> Ast.module_binding
  method module_expr : Ast.module_expr -> Ast.module_expr
  method module_type : Ast.module_type -> Ast.module_type
  method mutable_flag : Ast.mutable_flag -> Ast.mutable_flag
  method override_flag : Ast.override_flag -> Ast.override_flag
  method patt : Ast.patt -> Ast.patt
  method private_flag : Ast.private_flag -> Ast.private_flag
  method rec_binding : Ast.rec_binding -> Ast.rec_binding
  method rec_flag : Ast.rec_flag -> Ast.rec_flag
  method row_var_flag : Ast.row_var_flag -> Ast.row_var_flag
  method sig_item : Ast.sig_item -> Ast.sig_item
  method str_item : Ast.str_item -> Ast.str_item
  method string : string -> string
  method unknown : '-> 'h
  method virtual_flag : Ast.virtual_flag -> Ast.virtual_flag
  method with_constr : Ast.with_constr -> Ast.with_constr
end