Define the signature of a method consisting of its name, its arguments, return type, location and whether its an instance method.
type param_type
=
{
name : InferIR.Mangled.t; |
typ : InferIR.Typ.t; |
is_pointer_to_const : bool; |
is_value : bool; |
annot : InferIR.Annot.Item.t; |
}
type t
=
{
name : InferIR.Typ.Procname.t; |
access : InferGenerated.Clang_ast_t.access_specifier; |
class_param : param_type option; |
params : param_type list; |
ret_type : InferIR.Typ.t * InferIR.Annot.Item.t; |
attributes : InferGenerated.Clang_ast_t.attribute list; |
loc : InferGenerated.Clang_ast_t.source_range; |
method_kind : InferIR.ProcAttributes.clang_method_kind; |
is_cpp_virtual : bool; |
is_cpp_nothrow : bool; |
pointer_to_parent : InferGenerated.Clang_ast_t.pointer option; |
pointer_to_property_opt : InferGenerated.Clang_ast_t.pointer option; |
return_param_typ : InferIR.Typ.t option; |
}
val is_getter : t ‑> bool
val is_setter : t ‑> bool
val mk : InferIR.Typ.Procname.t ‑> param_type option ‑> param_type list ‑> (InferIR.Typ.t * InferIR.Annot.Item.t) ‑> InferGenerated.Clang_ast_t.attribute list ‑> InferGenerated.Clang_ast_t.source_range ‑> InferIR.ProcAttributes.clang_method_kind ‑> ?is_cpp_virtual:bool ‑> ?is_cpp_nothrow:bool ‑> InferGenerated.Clang_ast_t.pointer option ‑> InferGenerated.Clang_ast_t.pointer option ‑> InferIR.Typ.t option ‑> InferGenerated.Clang_ast_t.access_specifier ‑> t
val pp : Format.formatter ‑> t ‑> unit
val mk_param_type : ?is_value:bool ‑> ?is_pointer_to_const:bool ‑> ?annot:InferIR.Annot.Item.t ‑> InferIR.Mangled.t ‑> InferIR.Typ.t ‑> param_type