Module Nullsafe.AnnotatedSignature

type t = {
nullsafe_mode : NullsafeMode.t;
model_source : model_source option;

None, if signature is not modelled

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 model_source =
| InternalModel
| ThirdPartyRepo of {
filename : string;
line_number : 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_model_source : model_source -> 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_model_source : model_source -> 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_model_source : model_source -> 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_model_source : model_source -> model_source -> int
val set_modelled_nullability : IR.Procname.t -> t -> 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.