The Smallfoot Intermediate Language: Constants

`module F = Format`
`type t````=`

`|` `Cint of InferIR.IntLit.t` | (** integer constants *)
`|` `Cfun of InferIR.Typ.Procname.t` | (** function names *)
`|` `Cstr of string` | (** string constants *)
`|` `Cfloat of float` | (** float constants *)
`|` `Cclass of InferIR.Ident.name` | (** class constant *)

``

Constants

`include sig ... end`
`val compare : t ‑> t ‑> int`
`val equal : t ‑> t ‑> bool`
`val kind_equal : t ‑> t ‑> bool`

Return true if the constants have the same kind (both integers, ...)

`val pp : InferStdlib.Pp.env ‑> F.formatter ‑> t ‑> unit`

Pretty print a const

`val iszero_int_float : t ‑> bool`
`val isone_int_float : t ‑> bool`
`val isminusone_int_float : t ‑> bool`