Module Cfg.Make

Parameters

module Control_location : sig ... end

Signature

module Control_location = Control_location
module Node : sig ... end
val register_edge : Node.t -> Control_location.t -> Node.t

Register an edge from a node to a (possibly new) control location. Returns the (possibly newly created) node for the control location.

Note: this interface for creating nodes ensures that nodes are created in a traversal order.

val known : Control_location.t -> Node.t option

Returns the node if it was already known, or None otherwise. Known is useful when trying to construct the CFG by exploration.