type-indexed-queues-0.1.0.0: Queues with verified and unverified versions.

Safe HaskellNone
LanguageHaskell2010

Data.Queue.Braun

Description

Simple, unchecked braun heaps.

Synopsis

Documentation

newtype Braun a Source #

A Braun heap. Based on this implementation.

A braun tree is a nearly balanced binary tree: the left branch can be either exactly the same size as the right, or one element larger.

This version is unchecked (very unchecked), and is provided mainly for comparison to the checked version.

Constructors

Braun 

Fields

Instances

Functor Braun Source # 

Methods

fmap :: (a -> b) -> Braun a -> Braun b #

(<$) :: a -> Braun b -> Braun a #

Foldable Braun Source # 

Methods

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

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

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

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

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

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

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

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

toList :: Braun a -> [a] #

null :: Braun a -> Bool #

length :: Braun a -> Int #

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

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

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

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

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

Traversable Braun Source # 

Methods

traverse :: Applicative f => (a -> f b) -> Braun a -> f (Braun b) #

sequenceA :: Applicative f => Braun (f a) -> f (Braun a) #

mapM :: Monad m => (a -> m b) -> Braun a -> m (Braun b) #

sequence :: Monad m => Braun (m a) -> m (Braun a) #

Generic1 Braun Source # 

Associated Types

type Rep1 (Braun :: * -> *) :: * -> * #

Methods

from1 :: Braun a -> Rep1 Braun a #

to1 :: Rep1 Braun a -> Braun a #

Ord a => Queue Braun a Source # 

Methods

minView :: Braun a -> Maybe (a, Braun a) Source #

insert :: a -> Braun a -> Braun a Source #

empty :: Braun a Source #

singleton :: a -> Braun a Source #

toList :: Braun a -> [a] Source #

fromList :: [a] -> Braun a Source #

heapSort :: p Braun -> [a] -> [a] Source #

Ord a => Eq (Braun a) Source # 

Methods

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

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

Data a => Data (Braun a) Source # 

Methods

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

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

toConstr :: Braun a -> Constr #

dataTypeOf :: Braun a -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord a => Ord (Braun a) Source # 

Methods

compare :: Braun a -> Braun a -> Ordering #

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

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

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

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

max :: Braun a -> Braun a -> Braun a #

min :: Braun a -> Braun a -> Braun a #

(Read a, Ord a) => Read (Braun a) Source # 
(Show a, Ord a) => Show (Braun a) Source # 

Methods

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

show :: Braun a -> String #

showList :: [Braun a] -> ShowS #

Generic (Braun a) Source # 

Associated Types

type Rep (Braun a) :: * -> * #

Methods

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

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

NFData a => NFData (Braun a) Source # 

Methods

rnf :: Braun a -> () #

type Rep1 Braun Source # 
type Rep1 Braun = D1 (MetaData "Braun" "Data.Queue.Braun" "type-indexed-queues-0.1.0.0-673DidVnYBH7pHDFM1KZLj" True) (C1 (MetaCons "Braun" PrefixI True) (S1 (MetaSel (Just Symbol "runBraun") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec1 Tree)))
type Rep (Braun a) Source # 
type Rep (Braun a) = D1 (MetaData "Braun" "Data.Queue.Braun" "type-indexed-queues-0.1.0.0-673DidVnYBH7pHDFM1KZLj" True) (C1 (MetaCons "Braun" PrefixI True) (S1 (MetaSel (Just Symbol "runBraun") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Tree a))))