Module Taint.Object

Each taint represents an abstract object that we would like to track. Every time a new taint is introduced we create a fresh new value, that represents the abstract object that we are tracking.

The analysis may use this value as an identity of that object, and associate various attributes with it.

type t
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t

the Primus Lisp type of objects. @since 2.1

val inspect : t -> Core_kernel.Sexp.t

inspect obj returns a s-exp representation of obj for introspection.

  • since 2.2.0
val to_string : t -> string

to_string obj returns a textual representation of obj for introspection.

include Core_kernel.Comparable.S_plain with type t := t and type comparator_witness = Bap_primus.Std.Primus.Value.comparator_witness
val (>=) : t -> t -> bool
val (<=) : t -> t -> bool
val (=) : t -> t -> bool
val (>) : t -> t -> bool
val (<) : t -> t -> bool
val (<>) : t -> t -> bool
val equal : t -> t -> bool
val compare : t -> t -> int
val min : t -> t -> t
val max : t -> t -> t
val ascending : t -> t -> int
val descending : t -> t -> int
val between : t -> low:t -> high:t -> bool
val clamp_exn : t -> min:t -> max:t -> t
val clamp : t -> min:t -> max:t -> t Base__.Or_error.t
val comparator : (t, comparator_witness) Base__.Comparator.comparator
val validate_lbound : min:t Base__.Maybe_bound.t -> t Base__.Validate.check
val validate_ubound : max:t Base__.Maybe_bound.t -> t Base__.Validate.check
val validate_bound : min:t Base__.Maybe_bound.t -> max:t Base__.Maybe_bound.t -> t Base__.Validate.check
module Replace_polymorphic_compare : sig ... end
module Map : sig ... end
module Set : sig ... end