dynamic-graphs-0.1.0.3: Dynamic graph algorithms

Safe HaskellNone
LanguageHaskell2010

Data.Graph.Dynamic.Internal.Splay

Contents

Synopsis

Documentation

data Tree s a v Source #

Instances
TestTree Tree Source # 
Instance details

Defined in Data.Graph.Dynamic.Internal.Splay

Methods

print :: Show a => Tree (PrimState IO) a v -> IO () Source #

assertInvariants :: (PrimMonad m, Monoid v, Eq v, Show v) => Tree (PrimState m) a v -> m () Source #

assertSingleton :: (PrimMonad m, Monoid v, Eq v, Show v) => Tree (PrimState m) a v -> m () Source #

assertRoot :: (PrimMonad m, Monoid v, Eq v, Show v) => Tree (PrimState m) a v -> m () Source #

Tree Tree Source # 
Instance details

Defined in Data.Graph.Dynamic.Internal.Splay

Associated Types

type TreeGen Tree :: Type -> Type Source #

Methods

newTreeGen :: PrimMonad m => Proxy Tree -> m (TreeGen Tree (PrimState m)) Source #

singleton :: (PrimMonad m, Monoid v) => TreeGen Tree (PrimState m) -> a -> v -> m (Tree (PrimState m) a v) Source #

append :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

cons :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

snoc :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

split :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m (Maybe (Tree (PrimState m) a v), Maybe (Tree (PrimState m) a v)) Source #

connected :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m Bool Source #

root :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

readRoot :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

label :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m a Source #

aggregate :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m v Source #

toList :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m [a] Source #

Eq (Tree s a v) Source # 
Instance details

Defined in Data.Graph.Dynamic.Internal.Splay

Methods

(==) :: Tree s a v -> Tree s a v -> Bool #

(/=) :: Tree s a v -> Tree s a v -> Bool #

type TreeGen Tree Source # 
Instance details

Defined in Data.Graph.Dynamic.Internal.Splay

singleton :: PrimMonad m => a -> v -> m (Tree (PrimState m) a v) Source #

cons :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

lv must be a singleton tree

snoc :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

rv must be a singleton tree

append :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

Appends two trees. Returns the root of the tree.

split :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m (Maybe (Tree (PrimState m) a v), Maybe (Tree (PrimState m) a v)) Source #

connected :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> Tree (PrimState m) a v -> m Bool Source #

root :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

aggregate :: (PrimMonad m, Monoid v) => Tree (PrimState m) a v -> m v Source #

toList :: PrimMonad m => Tree (PrimState m) a v -> m [a] Source #

For debugging/testing.

Debugging only

readRoot :: PrimMonad m => Tree (PrimState m) a v -> m (Tree (PrimState m) a v) Source #

freeze :: PrimMonad m => Tree (PrimState m) a v -> m (Tree a) Source #

For debugging/testing.

print :: Show a => Tree (PrimState IO) a v -> IO () Source #

assertInvariants :: (PrimMonad m, Monoid v, Eq v, Show v) => Tree (PrimState m) a v -> m () Source #