Module IR.CapturedVar

type capture_mode =
  1. | ByReference
  2. | ByValue
val compare_capture_mode : capture_mode -> capture_mode -> int
val equal_capture_mode : capture_mode -> capture_mode -> bool
val yojson_of_capture_mode : capture_mode -> Ppx_yojson_conv_lib.Yojson.Safe.t
val sexp_of_capture_mode : capture_mode -> Sexplib0.Sexp.t
val capture_mode_of_sexp : Sexplib0.Sexp.t -> capture_mode
val hash_fold_capture_mode : Ppx_hash_lib.Std.Hash.state -> capture_mode -> Ppx_hash_lib.Std.Hash.state
val hash_capture_mode : capture_mode -> Ppx_hash_lib.Std.Hash.hash_value
val hash_normalize_capture_mode : capture_mode -> capture_mode
val hash_normalize_capture_mode_opt : capture_mode option -> capture_mode option
val hash_normalize_capture_mode_list : capture_mode list -> capture_mode list
val string_of_capture_mode : capture_mode -> string
val is_captured_by_ref : capture_mode -> bool
type captured_info = {
  1. loc : IBase.Location.t;
  2. is_formal : Procname.t option;
}
val compare_captured_info : captured_info -> captured_info -> int
val equal_captured_info : captured_info -> captured_info -> bool
val sexp_of_captured_info : captured_info -> Sexplib0.Sexp.t
val captured_info_of_sexp : Sexplib0.Sexp.t -> captured_info
val hash_fold_captured_info : Ppx_hash_lib.Std.Hash.state -> captured_info -> Ppx_hash_lib.Std.Hash.state
val hash_captured_info : captured_info -> Ppx_hash_lib.Std.Hash.hash_value
val hash_normalize_captured_info : captured_info -> captured_info
val hash_normalize_captured_info_opt : captured_info option -> captured_info option
val hash_normalize_captured_info_list : captured_info list -> captured_info list
type context_info = {
  1. is_checked_for_null : bool;
}
val compare_context_info : context_info -> context_info -> int
val equal_context_info : context_info -> context_info -> bool
val sexp_of_context_info : context_info -> Sexplib0.Sexp.t
val context_info_of_sexp : Sexplib0.Sexp.t -> context_info
val hash_fold_context_info : Ppx_hash_lib.Std.Hash.state -> context_info -> Ppx_hash_lib.Std.Hash.state
val hash_context_info : context_info -> Ppx_hash_lib.Std.Hash.hash_value
val hash_normalize_context_info : context_info -> context_info
val hash_normalize_context_info_opt : context_info option -> context_info option
val hash_normalize_context_info_list : context_info list -> context_info list
type t = {
  1. pvar : Pvar.t;
  2. typ : Typ.t;
  3. capture_mode : capture_mode;
  4. captured_from : captured_info option;
  5. context_info : context_info option;
}

captured_from and context_info only set for captured variables in Objective-C blocks

include Ppx_compare_lib.Comparable.S with type t := t
val compare : t Base__Ppx_compare_lib.compare
include Ppx_compare_lib.Equal.S with type t := t
val equal : t Base__Ppx_compare_lib.equal
include Sexplib0.Sexpable.S with type t := t
val t_of_sexp : Sexplib0__.Sexp.t -> t
val sexp_of_t : t -> Sexplib0__.Sexp.t
include Ppx_hash_lib.Hashable.S with type t := t
val hash_fold_t : t Base__Ppx_hash_lib.hash_fold
val hash : t -> Base__Ppx_hash_lib.Std.Hash.hash_value
val hash_normalize : t -> t
val hash_normalize_opt : t option -> t option
val hash_normalize_list : t list -> t list
val pp : Stdlib.Format.formatter -> t -> unit