Module Deprecation

type t = {
since : string option;
note : string option;
}
type 'a with_qf = {
depr : t;
use_instead : 'a option;
}
val drop_qf : 'a with_qf -> t
val with_empty_qf : t -> 'a with_qf
val make : ?since:string -> ?note:string -> unit -> t
val make_with_qf : ?since:string -> ?note:string -> ?use_instead:'qf -> unit -> 'qf with_qf
val create_warning : ?default:CWarnings.status -> object_name:string -> warning_name_if_no_since:string -> ('b -> Pp.t) -> ?loc:Loc.t -> ('b * t) -> unit
val create_warning_with_qf : ?default:CWarnings.status -> object_name:string -> warning_name_if_no_since:string -> pp_qf:('qf -> Pp.t) -> ('b -> Pp.t) -> ?loc:Loc.t -> ('b * 'qf with_qf) -> unit
module Version : sig ... end