     , `Bool'
     } -> `CInt' void- #}
 
-data ErdosRenyiModel = GNP Int Double
-                     | GNM Int Int
+data ErdosRenyiModel = GNP Int Double  -- ^ G(n,p) graph, every possible edge is
+                                       -- included in the graph with probability p.
+                     | GNM Int Int   -- ^ G(n,m) graph, m edges are selected
+                                     -- uniformly randomly in a graph with n
+                                     -- vertices.
 
 erdosRenyiGame :: forall d. SingI d
                => ErdosRenyiModel

    , castPtr `Ptr Vector', castPtr `Ptr Vector', `Degseq'
    } -> `CInt' void- #}

-- | Randomly rewires a graph while preserving the degree distribution.
rewire :: (Serialize v, Ord v, Serialize e)
       => Int    -- ^ Number of rewiring trials to perform.

    igraphRewire (_mgraph gr') n IgraphRewiringSimple
    unsafeFreeze gr'
{#fun igraph_rewire as ^ { `IGraph', `Int', `Rewiring' } -> `CInt' void-#}

