Module Nullsafe.AnnotatedSignature
type t
=
{
nullsafe_mode : NullsafeMode.t;
kind : kind;
ret : ret_signature;
params : param_signature list;
}
and ret_signature
=
{
ret_annotation_deprecated : IR.Annot.Item.t;
ret_annotated_type : AnnotatedType.t;
}
and param_signature
=
{
param_annotation_deprecated : IR.Annot.Item.t;
mangled : IR.Mangled.t;
param_annotated_type : AnnotatedType.t;
}
and kind
=
|
FirstParty
Code under control. Its nullability should be expressed via annotations.
|
ThirdParty of third_party_model_source
and third_party_model_source
=
val compare : t -> t -> int
val compare_ret_signature : ret_signature -> ret_signature -> int
val compare_param_signature : param_signature -> param_signature -> int
val compare_kind : kind -> kind -> int
val compare_third_party_model_source : third_party_model_source -> third_party_model_source -> int
val compare : t -> t -> int
val compare_ret_signature : ret_signature -> ret_signature -> int
val compare_param_signature : param_signature -> param_signature -> int
val compare_kind : kind -> kind -> int
val compare_third_party_model_source : third_party_model_source -> third_party_model_source -> int
val compare : t -> t -> int
val compare_ret_signature : ret_signature -> ret_signature -> int
val compare_param_signature : param_signature -> param_signature -> int
val compare_kind : kind -> kind -> int
val compare_third_party_model_source : third_party_model_source -> third_party_model_source -> int
val compare : t -> t -> int
val compare_ret_signature : ret_signature -> ret_signature -> int
val compare_param_signature : param_signature -> param_signature -> int
val compare_kind : kind -> kind -> int
val compare_third_party_model_source : third_party_model_source -> third_party_model_source -> int
val get_non_virtual_params : t -> param_signature list
List of params, not counting the optional first ("this") param used to represent non-static methods.
val set_modelled_nullability : IR.Procname.t -> t -> third_party_model_source -> (bool * bool list) -> t
Override nullability for a function signature given its modelled nullability (for ret value and params)
val get : is_callee_in_trust_list:bool -> nullsafe_mode:NullsafeMode.t -> IR.ProcAttributes.t -> t
Get a method signature with annotations from a proc_attributes.
val get_for_class_under_analysis : IR.Tenv.t -> IR.ProcAttributes.t -> t
Signature of the method belonging to the currently analyzed class.
val pp : IR.Procname.t -> Stdlib.Format.formatter -> t -> unit
Pretty print a method signature with annotations.