`type t = Make_Abstract(G).I.t = {`

1. `edges : G.t;`
2. `mutable size : int;`

`}`
`type vertex = G.vertex`
`type edge = G.edge`
`module PV : sig ... end`
`module PE : sig ... end`
`val iter_edges : (G.vertex -> G.vertex -> unit) -> t -> unit`
`val fold_edges : (G.vertex -> G.vertex -> 'a -> 'a) -> t -> 'a -> 'a`
`val iter_edges_e : (G.edge -> unit) -> t -> unit`
`val fold_edges_e : (G.edge -> 'a -> 'a) -> t -> 'a -> 'a`
`val mem_vertex : G.vertex -> t -> bool`
`val create : ?size:int -> unit -> t`
`val clear : t -> unit`