pandora-0.3.3: A box of patterns and paradigms
Safe HaskellSafe-Inferred
LanguageHaskell2010

Pandora.Paradigm.Structure.Stack

Synopsis

Documentation

type Stack = Maybe <:.> Construction Maybe Source #

Linear data structure that serves as a collection of elements

delete :: Setoid a => a -> Stack a -> Stack a Source #

filter :: forall a. Predicate a -> Stack a -> Stack a Source #

linearize :: forall t a. Traversable t => t a -> Stack a Source #

Transform any traversable structure into a stack

Orphan instances

Insertable Stack Source # 
Instance details

Methods

insert :: a -> Stack a -> Stack a Source #

Insertable (Construction Maybe) Source # 
Instance details

Semigroup (Stack a) Source # 
Instance details

Methods

(+) :: Stack a -> Stack a -> Stack a Source #

Monoid (Stack a) Source # 
Instance details

Methods

zero :: Stack a Source #

Setoid a => Setoid (Stack a) Source # 
Instance details

Methods

(==) :: Stack a -> Stack a -> Boolean Source #

(/=) :: Stack a -> Stack a -> Boolean Source #

Focusable ('Head :: Type -> Location Type) Stack Source # 
Instance details

Associated Types

type Focusing 'Head Stack a Source #

Focusable ('Head :: Type -> Location Type) (Construction Maybe) Source # 
Instance details

Associated Types

type Focusing 'Head (Construction Maybe) a Source #

Monotonic (Construction Maybe a) a Source # 
Instance details

Methods

reduce :: (a -> r -> r) -> r -> Construction Maybe a -> r Source #

resolve :: (a -> r) -> r -> Construction Maybe a -> r Source #

Rotatable ('Right :: a -> Wye a) (Tap (Delta <:.> Construction Maybe)) Source # 
Instance details

Associated Types

type Rotational 'Right (Tap (Delta <:.> Construction Maybe)) a Source #

Rotatable ('Left :: a -> Wye a) (Tap (Delta <:.> Construction Maybe)) Source # 
Instance details

Associated Types

type Rotational 'Left (Tap (Delta <:.> Construction Maybe)) a Source #

Rotatable ('Right :: a -> Wye a) (Tap (Delta <:.> Stack)) Source # 
Instance details

Associated Types

type Rotational 'Right (Tap (Delta <:.> Stack)) a Source #

Rotatable ('Left :: a -> Wye a) (Tap (Delta <:.> Stack)) Source # 
Instance details

Associated Types

type Rotational 'Left (Tap (Delta <:.> Stack)) a Source #

Monotonic ((Maybe <:.> Construction Maybe) := a) a Source # 
Instance details

Methods

reduce :: (a -> r -> r) -> r -> ((Maybe <:.> Construction Maybe) := a) -> r Source #

resolve :: (a -> r) -> r -> ((Maybe <:.> Construction Maybe) := a) -> r Source #