Module PulseFormula.Term

type t =
  1. | Const of Q.t
  2. | String of string
  3. | Var of Var.t
  4. | Procname of IR.Procname.t
  5. | FunctionApplication of {
    1. f : t;
    2. actuals : t list;
    }
  6. | Linear of LinArith.t
  7. | Add of t * t
  8. | Minus of t
  9. | LessThan of t * t
  10. | LessEqual of t * t
  11. | Equal of t * t
  12. | NotEqual of t * t
  13. | Mult of t * t
  14. | DivI of t * t
  15. | DivF of t * t
  16. | And of t * t
  17. | Or of t * t
  18. | Not of t
  19. | Mod of t * t
  20. | BitAnd of t * t
  21. | BitOr of t * t
  22. | BitNot of t
  23. | BitShiftLeft of t * t
  24. | BitShiftRight of t * t
  25. | BitXor of t * t
  26. | StringConcat of t * t
  27. | IsInstanceOf of {
    1. var : Var.t;
    2. typ : IR.Typ.t;
    3. nullable : bool;
    }
  28. | IsInt of t
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
val yojson_of_t : t -> Ppx_yojson_conv_lib.Yojson.Safe.t
module Set : Stdlib.Set.S