Module Costlib.ControlFlowCost

module F = Stdlib.Format
module BasicCost = CostDomain.BasicCost
module Item : sig ... end
module Sum : sig ... end
type t = [
  1. | `Edge of Node.id * Node.id
  2. | `Node of Node.id
  3. | `Sum of int * Item.t list
]

A Control-flow cost represents the number of times the flow of control can go through a certain CFG item (a node or an edge), or a sum of such things

val make_node : Node.id -> t
val make_pred_edge : 'a -> 'b -> [> `Edge of 'b * 'a ]
val make_succ_edge : 'a -> 'b -> [> `Edge of 'a * 'b ]
val pp : F.formatter -> t -> unit
val sum : Item.t list -> t
module Set : sig ... end