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