Melange_ppx_lib.Ast_iomodule Intf_or_impl : sig ... endtype input_version = (module OCaml_version)val fall_back_input_version : (module OCaml_version)type read_error = | Not_a_binary_ast| Unknown_version of string * input_version| Source_parse_error of Ppxlib_ast.Location_error.t * input_version| System_error of Ppxlib_ast.Location_error.t * input_versiontype input_kind = | Possibly_source of {filename : string;parse_fun : Lexing.lexbuf -> Intf_or_impl.t;}| Necessarily_binaryval read : input_source -> input_kind:input_kind -> (t, read_error) resultval read_exn : input_source -> input_kind:input_kind -> t