rose-trees-0.0.4.5: Various trie implementations in Haskell

Safe HaskellNone
LanguageHaskell2010

Data.Tree.Set

Contents

Synopsis

Documentation

data SetTree a Source #

Constructors

SetTree 

Fields

Instances
Foldable SetTree Source # 
Instance details

Defined in Data.Tree.Set

Methods

fold :: Monoid m => SetTree m -> m #

foldMap :: Monoid m => (a -> m) -> SetTree a -> m #

foldr :: (a -> b -> b) -> b -> SetTree a -> b #

foldr' :: (a -> b -> b) -> b -> SetTree a -> b #

foldl :: (b -> a -> b) -> b -> SetTree a -> b #

foldl' :: (b -> a -> b) -> b -> SetTree a -> b #

foldr1 :: (a -> a -> a) -> SetTree a -> a #

foldl1 :: (a -> a -> a) -> SetTree a -> a #

toList :: SetTree a -> [a] #

null :: SetTree a -> Bool #

length :: SetTree a -> Int #

elem :: Eq a => a -> SetTree a -> Bool #

maximum :: Ord a => SetTree a -> a #

minimum :: Ord a => SetTree a -> a #

sum :: Num a => SetTree a -> a #

product :: Num a => SetTree a -> a #

Foldable1 SetTree Source # 
Instance details

Defined in Data.Tree.Set

Methods

fold1 :: Semigroup m => SetTree m -> m #

foldMap1 :: Semigroup m => (a -> m) -> SetTree a -> m #

toNonEmpty :: SetTree a -> NonEmpty a #

RoseTree SetTree Source # 
Instance details

Defined in Data.Tree.Rose

Methods

(@->) :: Head (SetTree a) -> Tail (SetTree a) -> SetTree a Source #

HasSingleton a (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

singleton :: a -> SetTree a #

Eq a => Eq (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

(==) :: SetTree a -> SetTree a -> Bool #

(/=) :: SetTree a -> SetTree a -> Bool #

(Data a, Ord a) => Data (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SetTree a -> c (SetTree a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (SetTree a) #

toConstr :: SetTree a -> Constr #

dataTypeOf :: SetTree a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (SetTree a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (SetTree a)) #

gmapT :: (forall b. Data b => b -> b) -> SetTree a -> SetTree a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SetTree a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SetTree a -> r #

gmapQ :: (forall d. Data d => d -> u) -> SetTree a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SetTree a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SetTree a -> m (SetTree a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SetTree a -> m (SetTree a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SetTree a -> m (SetTree a) #

Ord a => Ord (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

compare :: SetTree a -> SetTree a -> Ordering #

(<) :: SetTree a -> SetTree a -> Bool #

(<=) :: SetTree a -> SetTree a -> Bool #

(>) :: SetTree a -> SetTree a -> Bool #

(>=) :: SetTree a -> SetTree a -> Bool #

max :: SetTree a -> SetTree a -> SetTree a #

min :: SetTree a -> SetTree a -> SetTree a #

Show a => Show (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

showsPrec :: Int -> SetTree a -> ShowS #

show :: SetTree a -> String #

showList :: [SetTree a] -> ShowS #

Generic (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Associated Types

type Rep (SetTree a) :: Type -> Type #

Methods

from :: SetTree a -> Rep (SetTree a) x #

to :: Rep (SetTree a) x -> SetTree a #

Ord a => Semigroup (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

(<>) :: SetTree a -> SetTree a -> SetTree a #

sconcat :: NonEmpty (SetTree a) -> SetTree a #

stimes :: Integral b => b -> SetTree a -> SetTree a #

(Ord a, Arbitrary a) => Arbitrary (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

arbitrary :: Gen (SetTree a) #

shrink :: SetTree a -> [SetTree a] #

NFData a => NFData (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

rnf :: SetTree a -> () #

HasSize (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

Methods

size :: SetTree a -> Int #

type Rep (SetTree a) Source # 
Instance details

Defined in Data.Tree.Set

type Rep (SetTree a) = D1 (MetaData "SetTree" "Data.Tree.Set" "rose-trees-0.0.4.5-A00tWdqblf7Al7c9J60KpO" False) (C1 (MetaCons "SetTree" PrefixI True) (S1 (MetaSel (Just "sNode") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Just "sChildren") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Set (SetTree a)))))
type Tail (SetTree a) Source # 
Instance details

Defined in Data.Tree.Rose

type Tail (SetTree a) = Set (SetTree a)
type Head (SetTree a) Source # 
Instance details

Defined in Data.Tree.Rose

type Head (SetTree a) = a

Query

elem :: Eq a => a -> SetTree a -> Bool Source #

set-like alias for isDescendantOf.

elemPath :: Eq a => [a] -> SetTree a -> Bool Source #

isChildOf :: Eq a => a -> SetTree a -> Bool Source #

isDescendantOf :: Eq a => a -> SetTree a -> Bool Source #

isSubtreeOf :: Eq a => SetTree a -> SetTree a -> Bool Source #

Heirarchical analogue to subseteq.

isSubtreeOf' :: Eq a => SetTree a -> SetTree a -> Bool Source #

Bottom-up version

isProperSubtreeOf' :: Eq a => SetTree a -> SetTree a -> Bool Source #

Bottom-up version

eqHead :: Eq a => SetTree a -> SetTree a -> Bool Source #

Construction

delete :: Eq a => a -> SetTree a -> Maybe (SetTree a) Source #

Filtering

filter :: Eq a => (a -> Bool) -> SetTree a -> Maybe (SetTree a) Source #

Mapping

map :: Ord b => (a -> b) -> SetTree a -> SetTree b Source #

mapMaybe :: Eq b => (a -> Maybe b) -> SetTree a -> Maybe (SetTree b) Source #

fromTree :: Ord a => Tree a -> SetTree a Source #