type 'a t = 'a Base.Ref.t = {mutable contents : 'a;}
include Bin_prot.Binable.S1 with type 'a t := 'a t
val bin_shape_t : Bin_prot.Shape.t -> Bin_prot.Shape.tval bin_size_t : ('a, 'a t) Bin_prot.Size.sizer1val bin_write_t : ('a, 'a t) Bin_prot.Write.writer1val bin_read_t : ('a, 'a t) Bin_prot.Read.reader1val __bin_read_t__ : ('a, int -> 'a t) Bin_prot.Read.reader1val bin_writer_t : ('a, 'a t) Bin_prot.Type_class.S1.writerval bin_reader_t : ('a, 'a t) Bin_prot.Type_class.S1.readerval bin_t : ('a, 'a t) Bin_prot.Type_class.S1.t
include Typerep_lib.Typerepable.S1 with type 'a t := 'a t
val typerep_of_t : 'a Typerep_lib.Std_internal.Typerep.t -> 'a t Typerep_lib.Std_internal.Typerep.tval typename_of_t : 'a Typerep_lib.Typename.t -> 'a t Typerep_lib.Typename.t
include module type of sig ... end with type 'a Ref.t := 'a t
include module type of Base.Ref with type 'a t := 'a t
val compare : ('a -> 'a -> int) -> 'a t -> 'a t -> intval equal : ('a -> 'a -> bool) -> 'a t -> 'a t -> bool
include Base.Sexpable.S1 with type 'a t := 'a t
val t_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a tval sexp_of_t : ('a -> Sexplib0.Sexp.t) -> 'a t -> Sexplib0.Sexp.t
val t_sexp_grammar : Base.Sexp.Private.Raw_grammar.t
val replace : 'a t -> ('a -> 'a) -> unitreplace t fist := f !t
val set_temporarily : 'a t -> 'a -> f:(unit -> 'b) -> 'bset_temporarily t a ~fsetsttoa, callsf (), and then restorestto its value prior toset_temporarilybeing called, whetherfreturns or raises.
module And_value : sig ... endval sets_temporarily : And_value.t list -> f:(unit -> 'a) -> 'asets_temporarily [ ...; T (ti, ai); ... ] ~fsets eachtitoai, callsf (), and then restores alltito their value prior tosets_temporarilybeing called, whetherfreturns or raises.
module Permissioned : sig ... end