Module Frenetic.Network.Make.Topology

type t = Frenetic_kernel__Network.Make(Vertex)(Edge).Topology.t
type vertex = Frenetic_kernel__Network.Make(Vertex)(Edge).Topology.vertex
val vertex_of_sexp : Ppx_sexp_conv_lib.Sexp.t ‑> vertex
val sexp_of_vertex : vertex ‑> Ppx_sexp_conv_lib.Sexp.t
type edge = Frenetic_kernel__Network.Make(Vertex)(Edge).Topology.edge
val edge_of_sexp : Ppx_sexp_conv_lib.Sexp.t ‑> edge
val sexp_of_edge : edge ‑> Ppx_sexp_conv_lib.Sexp.t
type port = int32
val port_of_sexp : Ppx_sexp_conv_lib.Sexp.t ‑> port
val sexp_of_port : port ‑> Ppx_sexp_conv_lib.Sexp.t
module Vertex : sig ... end
module Edge : sig ... end
module UnitWeight : sig ... end
module EdgeSet : sig ... end
module VertexSet : sig ... end
module VertexHash : sig ... end
module PortSet : sig ... end
val copy : t ‑> t
val empty : unit ‑> t
val add_vertex : t ‑> Vertex.t ‑> t * vertex
val add_port : t ‑> vertex ‑> port ‑> t
val add_edge : t ‑> vertex ‑> port ‑> Edge.t ‑> vertex ‑> port ‑> t * edge
val num_vertexes : t ‑> int
val num_edges : t ‑> int
val vertexes : t ‑> VertexSet.t
val edges : t ‑> EdgeSet.t
val neighbors : t ‑> vertex ‑> VertexSet.t
val find_edge : t ‑> vertex ‑> vertex ‑> edge
val find_all_edges : t ‑> vertex ‑> vertex ‑> EdgeSet.t
val vertex_to_ports : t ‑> vertex ‑> PortSet.t
val next_hop : t ‑> vertex ‑> port ‑> edge option
val edge_src : edge ‑> vertex * port
val edge_dst : edge ‑> vertex * port
val inverse_edge : t ‑> edge ‑> edge option
val vertex_to_string : t ‑> vertex ‑> string
val vertex_to_label : t ‑> vertex ‑> Vertex.t
val vertex_of_label : t ‑> Vertex.t ‑> vertex
val edge_to_string : t ‑> edge ‑> string
val edge_to_label : t ‑> edge ‑> Edge.t
val iter_succ : (edge ‑> unit) ‑> t ‑> vertex ‑> unit
val iter_vertexes : (vertex ‑> unit) ‑> t ‑> unit
val iter_edges : (edge ‑> unit) ‑> t ‑> unit
val fold_vertexes : (vertex ‑> 'a ‑> 'a) ‑> t ‑> 'a ‑> 'a
val fold_edges : (edge ‑> 'a ‑> 'a) ‑> t ‑> 'a ‑> 'a
val remove_vertex : t ‑> vertex ‑> t
val remove_port : t ‑> vertex ‑> port ‑> t
val remove_edge : t ‑> edge ‑> t
val remove_endpoint : t ‑> (vertex * port) ‑> t