Module Nullsafe.NullsafeMode
module Trust : sig ... endtype t=|Default|Local of Trust.t|Strict
val of_annot : IR.Annot.t -> t optionReturns
twhen provided annotation matches the format of@Nullsafe, otherwiseNone.
val of_class : IR.Tenv.t -> IR.JavaClassName.t -> tExtracts mode information from class annotations
val of_procname : IR.Tenv.t -> IR.Procname.t -> tExtracts mode information from a class where procname is defined
val is_in_trust_list : t -> IR.JavaClassName.t -> boolCheck whether
JavaClassName.tis in explicit trust list specified in the mode
val is_stricter_than : stricter:t -> weaker:t -> boolCheck whether
stricteris (strongly) stricter thanweaker
val severity : t -> IBase.IssueType.severityProvides a default choice of issue severity for a particular mode. Rule is: severity should be ERROR if and only if it is enforced.
val pp : Stdlib.Format.formatter -> t -> unit
type nested_class_annotation_problem=|RedundantNestedClassAnnotationNested mode is explicitly annotated exactly like the outer one.
|NestedModeIsWeaker of weak_typeAttempt to relax the mode imposed in the outer class.
and weak_type=|ExtraTrustClass of IR.JavaClassName.t listNested class has this extra list of classes
|Other
val check_problematic_class_annotation : IR.Tenv.t -> IR.JavaClassName.t -> (unit, nested_class_annotation_problem) IStdlib.IStd.resultGiven a (not anonymous) class name, check if there are semantic problems with
@Nullsafemode annotation for this class