Module Symb.Symbol

type t
type 'res eval = t -> BoundEnd.t -> 'res Absint.AbstractDomain.Types.bottom_lifted
val compare : t -> t -> int
val is_unsigned : t -> bool
val is_non_int : t -> bool
val is_global : t -> bool
val is_length : t -> bool
val pp_mark : markup:bool -> F.formatter -> t -> unit
val equal : t -> t -> bool
val paths_equal : t -> t -> bool
val path : t -> SymbolPath.t
val check_bound_end : t -> BoundEnd.t -> unit
type make_t = unsigned:bool -> ?⁠non_int:bool -> SymbolPath.t -> t
val make_onevalue : make_t
val make_boundend : BoundEnd.t -> make_t
val exists_str : f:(string -> bool) -> t -> bool
val of_foreign_id : int -> t

make a symbol out of any type of variables that can be represented by their int id

val get_foreign_id_exn : t -> int

Return the int id of the foreign variable represented by the symbol. Will fail if called on a symbol not created with of_foreign_id.