Copyright | (C) 2012-16 Edward Kmett |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Control.Lens.Internal.Deque
Description
This module is designed to be imported qualified.
Documentation
A Banker's deque based on Chris Okasaki's "Purely Functional Data Structures"
Constructors
BD !Int [a] !Int [a] |
Instances
Foldable Deque # | |
Defined in Control.Lens.Internal.Deque Methods fold :: Monoid m => Deque m -> m foldMap :: Monoid m => (a -> m) -> Deque a -> m foldMap' :: Monoid m => (a -> m) -> Deque a -> m foldr :: (a -> b -> b) -> b -> Deque a -> b foldr' :: (a -> b -> b) -> b -> Deque a -> b foldl :: (b -> a -> b) -> b -> Deque a -> b foldl' :: (b -> a -> b) -> b -> Deque a -> b foldr1 :: (a -> a -> a) -> Deque a -> a foldl1 :: (a -> a -> a) -> Deque a -> a elem :: Eq a => a -> Deque a -> Bool maximum :: Ord a => Deque a -> a | |
Traversable Deque # | |
Alternative Deque # | |
Applicative Deque # | |
Functor Deque # | |
Monad Deque # | |
MonadPlus Deque # | |
Alt Deque # | |
Apply Deque # | |
Bind Deque # | |
Plus Deque # | |
Defined in Control.Lens.Internal.Deque | |
FoldableWithIndex Int Deque # | |
Defined in Control.Lens.Internal.Deque | |
FunctorWithIndex Int Deque # | |
Defined in Control.Lens.Internal.Deque | |
TraversableWithIndex Int Deque # | |
Defined in Control.Lens.Internal.Deque | |
Monoid (Deque a) # | |
Semigroup (Deque a) # | |
Show a => Show (Deque a) # | |
Eq a => Eq (Deque a) # | |
Ord a => Ord (Deque a) # | |
Reversing (Deque a) # | |
Defined in Control.Lens.Internal.Deque | |
Cons (Deque a) (Deque b) a b # | |
Snoc (Deque a) (Deque b) a b # | |
O(n) amortized. Construct a Deque
from a list of values.
>>>
fromList [1,2]
BD 1 [1] 1 [2]
O(1). Determine if a Deque
is empty
.
>>>
Control.Lens.Internal.Deque.null empty
True
>>>
Control.Lens.Internal.Deque.null (singleton 1)
False