LoopTermination.Statements
We want to record termination information of loops and use the loop * statements for that. We use this lifting because we need to have a * lattice.
val hash : t -> int
val show : [< `Bot | `Lifted of CilType.Stmt.t | `Top ] -> string
val pretty : unit -> t -> Printable.Pretty.doc
val printXml :
'a BatInnerIO.output ->
[< `Bot | `Lifted of CilType.Stmt.t | `Top ] ->
unit
val to_yojson : [< `Bot | `Lifted of CilType.Stmt.t | `Top ] -> Yojson.Safe.t
val relift : [< `Bot | `Lifted of CilType.Stmt.t | `Top Lifted ] as 'a -> 'a
val arbitrary :
unit ->
[ `Bot | `Lifted of CilType.Stmt.t | `Top ] QCheck.arbitrary
val join : [> `Bot | `Lifted of CilType.Stmt.t | `Top ] as 'a -> 'a -> 'a
val widen : [> `Bot | `Lifted of CilType.Stmt.t | `Top ] as 'a -> 'a -> 'a
val meet : [> `Bot | `Lifted of CilType.Stmt.t | `Top ] as 'a -> 'a -> 'a
val narrow : [> `Bot | `Lifted of CilType.Stmt.t | `Top ] as 'a -> 'a -> 'a