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

Pandora.Paradigm.Primary.Functor.Wye

Documentation

data Wye a Source #

Constructors

End 
Left a 
Right a 
Both a a 

Instances

Instances details
Monotonic a (Wye a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Wye

Methods

reduce :: (a -> r -> r) -> r -> Wye a -> r Source #

resolve :: (a -> r) -> r -> Wye a -> r Source #

Semigroup a => Semigroup (Wye a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Wye

Methods

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

Semigroup a => Monoid (Wye a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Wye

Methods

zero :: Wye a Source #

Morphable ('Into ('Left Maybe)) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into ('Left Maybe)) Wye :: Type -> Type Source #

Morphable ('Into ('Right Maybe)) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into ('Right Maybe)) Wye :: Type -> Type Source #

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tape Stream) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

Associated Types

type Morphing ('Rotate 'Right) (Tape Stream) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tape Stream) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

Associated Types

type Morphing ('Rotate 'Left) (Tape Stream) :: Type -> Type Source #

Morphable ('Into ('Preorder (Construction Maybe))) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Morphing ('Into ('Preorder (Construction Maybe))) (Construction Wye) :: Type -> Type Source #

Morphable ('Into ('Inorder (Construction Maybe))) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Morphing ('Into ('Inorder (Construction Maybe))) (Construction Wye) :: Type -> Type Source #

Morphable ('Into ('Postorder (Construction Maybe))) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Morphing ('Into ('Postorder (Construction Maybe))) (Construction Wye) :: Type -> Type Source #

Morphable ('Into Wye) ((Maybe <:.:> Maybe) > (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into Wye) ((Maybe <:.:> Maybe) > (:*:)) :: Type -> Type Source #

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tape > Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Right) (Tape > Construction Maybe) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tape > Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Left) (Tape > Construction Maybe) :: Type -> Type Source #

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Right) (Turnover < Tape List) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Left) (Turnover < Tape List) :: Type -> Type Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (-->) (:*:) (:*:) t) => Substructure ('All ('Right :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

Associated Types

type Substance ('All 'Right) (Tape t <::> Tape t) :: Type -> Type Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (-->) (:*:) (:*:) t) => Substructure ('All ('Left :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

Associated Types

type Substance ('All 'Left) (Tape t <::> Tape t) :: Type -> Type Source #

Morphable (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > 'Right 'Zig) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > 'Left 'Zig) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Right > 'Zig 'Zag)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Left > 'Zig 'Zag)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Right > 'Zig 'Zig)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Left > 'Zig 'Zig)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > 'Right 'Zig) (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Morphable (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > 'Left 'Zig) (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Right > 'Zig 'Zag)) (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Left > 'Zig 'Zag)) (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Right > 'Zig 'Zig)) (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Left > 'Zig 'Zig)) (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Substructure ('Right :: a -> Wye a) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Substance 'Right Wye :: Type -> Type Source #

Substructure ('Left :: a -> Wye a) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Substance 'Left Wye :: Type -> Type Source #

Substructure ('Right :: a -> Wye a) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Substance 'Right Binary :: Type -> Type Source #

Substructure ('Left :: a -> Wye a) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Substance 'Left Binary :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Right :: a -> Wye a) (Tap ((t <:.:> t) > (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Associated Types

type Substance 'Right (Tap ((t <:.:> t) > (:*:))) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Left :: a -> Wye a) (Tap ((t <:.:> t) > (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Associated Types

type Substance 'Left (Tap ((t <:.:> t) > (:*:))) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Right :: a -> Wye a) (Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

Associated Types

type Substance 'Right (Tape t) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Left :: a -> Wye a) (Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

Associated Types

type Substance 'Left (Tape t) :: Type -> Type Source #

Substructure ('Right :: a -> Wye a) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Substance 'Right (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Substructure ('Left :: a -> Wye a) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Substance 'Left (Construction (Maybe <:*:> Maybe)) :: Type -> Type Source #

Substructure ('Right :: a -> Wye a) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Substance 'Right ((:*:) s) :: Type -> Type Source #

Substructure ('Left :: a1 -> Wye a1) (Flip (:*:) a2) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Substance 'Left (Flip (:*:) a2) :: Type -> Type Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u) => Substructure ('Right :: a -> Wye a) (t <:*:> u) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Substructure

Associated Types

type Substance 'Right (t <:*:> u) :: Type -> Type Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u) => Substructure ('Left :: a -> Wye a) (t <:*:> u) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Substructure

Associated Types

type Substance 'Left (t <:*:> u) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Wye

Methods

(<-|-) :: (a -> b) -> Wye a -> Wye b Source #

(<-|--) :: (a -> b) -> Wye a -> Wye b Source #

(<-|---) :: (a -> b) -> Wye a -> Wye b Source #

(<-|----) :: (a -> b) -> Wye a -> Wye b Source #

(<-|-----) :: (a -> b) -> Wye a -> Wye b Source #

(<-|------) :: (a -> b) -> Wye a -> Wye b Source #

(<-|-------) :: (a -> b) -> Wye a -> Wye b Source #

(<-|--------) :: (a -> b) -> Wye a -> Wye b Source #

(<-|-|-) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|--) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|---) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|----) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|-----) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|------) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|-------) :: (Covariant (->) (Betwixt (->) (->)) u, Covariant (Betwixt (->) (->)) (->) Wye) => (a -> b) -> Wye (u a) -> Wye (u b) Source #

(<-|-|-|-) :: (Covariant (->) (Betwixt (->) (Betwixt (->) (->))) v, Covariant (Betwixt (->) (Betwixt (->) (->))) (Betwixt (Betwixt (->) (->)) (->)) u, Covariant (Betwixt (Betwixt (->) (->)) (->)) (->) Wye) => (a -> b) -> Wye (u (v a)) -> Wye (u (v b)) Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Kan ('Right :: Type -> Wye Type) t u b) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

Methods

(<-|-) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|--) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|---) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|----) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|-----) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|------) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|-------) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|--------) :: (a -> b0) -> Kan 'Right t u b a -> Kan 'Right t u b b0 Source #

(<-|-|-) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|--) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|---) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|----) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|-----) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|------) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|-------) :: (Covariant (->) (Betwixt (->) (->)) u0, Covariant (Betwixt (->) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 a) -> Kan 'Right t u b (u0 b0) Source #

(<-|-|-|-) :: (Covariant (->) (Betwixt (->) (Betwixt (->) (->))) v, Covariant (Betwixt (->) (Betwixt (->) (->))) (Betwixt (Betwixt (->) (->)) (->)) u0, Covariant (Betwixt (Betwixt (->) (->)) (->)) (->) (Kan 'Right t u b)) => (a -> b0) -> Kan 'Right t u b (u0 (v a)) -> Kan 'Right t u b (u0 (v b0)) Source #

Contravariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Kan ('Left :: Type -> Wye Type) t u b) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

Methods

(>-|-) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|--) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|---) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|----) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|-----) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|------) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|-------) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|--------) :: (a -> b0) -> Kan 'Left t u b b0 -> Kan 'Left t u b a Source #

(>-|-|-) :: (Contravariant (->) (Betwixt (->) (->)) u0, Contravariant (Betwixt (->) (->)) (->) (Kan 'Left t u b)) => (a -> b0) -> Kan 'Left t u b (u0 a) -> Kan 'Left t u b (u0 b0) Source #

Interpreted ((->) :: Type -> Type -> Type) (Kan ('Left :: Type -> Wye Type) t u b) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

Associated Types

type Primary (Kan 'Left t u b) a Source #

Methods

run :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

unite :: ((->) < Primary (Kan 'Left t u b) a) < Kan 'Left t u b a Source #

(<~~~~~~~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~~~~~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~~~~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~~~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(<~) :: ((->) < Kan 'Left t u b a) < Primary (Kan 'Left t u b) a Source #

(=#-) :: (Semigroupoid (->), Interpreted (->) u0) => (((->) < Primary (Kan 'Left t u b) a) < Primary u0 b0) -> ((->) < Kan 'Left t u b a) < u0 b0 Source #

(-#=) :: (Semigroupoid (->), Interpreted (->) u0) => (((->) < Kan 'Left t u b a) < u0 b0) -> ((->) < Primary (Kan 'Left t u b) a) < Primary u0 b0 Source #

(<$=#-) :: (Semigroupoid (->), Covariant (->) (->) j, Interpreted (->) u0) => (((->) < Primary (Kan 'Left t u b) a) < Primary u0 b0) -> (j > Kan 'Left t u b a) -> (j > u0 b0) Source #

(-#=$>) :: (Covariant (->) (->) j, Interpreted (->) u0) => (((->) < Kan 'Left t u b a) < u0 b0) -> (j > Primary (Kan 'Left t u b) a) -> (j > Primary u0 b0) Source #

Interpreted ((->) :: Type -> Type -> Type) (Kan ('Right :: Type -> Wye Type) t u b) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

Associated Types

type Primary (Kan 'Right t u b) a Source #

Methods

run :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

unite :: ((->) < Primary (Kan 'Right t u b) a) < Kan 'Right t u b a Source #

(<~~~~~~~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~~~~~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~~~~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~~~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(<~) :: ((->) < Kan 'Right t u b a) < Primary (Kan 'Right t u b) a Source #

(=#-) :: (Semigroupoid (->), Interpreted (->) u0) => (((->) < Primary (Kan 'Right t u b) a) < Primary u0 b0) -> ((->) < Kan 'Right t u b a) < u0 b0 Source #

(-#=) :: (Semigroupoid (->), Interpreted (->) u0) => (((->) < Kan 'Right t u b a) < u0 b0) -> ((->) < Primary (Kan 'Right t u b) a) < Primary u0 b0 Source #

(<$=#-) :: (Semigroupoid (->), Covariant (->) (->) j, Interpreted (->) u0) => (((->) < Primary (Kan 'Right t u b) a) < Primary u0 b0) -> (j > Kan 'Right t u b a) -> (j > u0 b0) Source #

(-#=$>) :: (Covariant (->) (->) j, Interpreted (->) u0) => (((->) < Kan 'Right t u b a) < u0 b0) -> (j > Primary (Kan 'Right t u b) a) -> (j > Primary u0 b0) Source #

data Kan ('Left :: Type -> Wye Type) t u b a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

data Kan ('Left :: Type -> Wye Type) t u b a = Lan ((t b -> a) -> u b)
data Kan ('Right :: Type -> Wye Type) t u b a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

data Kan ('Right :: Type -> Wye Type) t u b a = Ran ((a -> t b) -> u b)
type Morphing ('Into ('Left Maybe)) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Morphing ('Into ('Right Maybe)) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tape Stream) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tape Stream) = Tape Stream
type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tape Stream) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tape Stream) = Tape Stream
type Morphing ('Into ('Preorder (Construction Maybe))) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Morphing ('Into ('Inorder (Construction Maybe))) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Morphing ('Into ('Postorder (Construction Maybe))) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Morphing ('Into Wye) ((Maybe <:.:> Maybe) > (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tape > Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tape > Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) = (Turnover :: (Type -> Type) -> Type -> Type) < Tape List
type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) = (Turnover :: (Type -> Type) -> Type -> Type) < Tape List
type Substance ('All ('Right :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

type Substance ('All ('Right :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) = Tape t <::> t
type Substance ('All ('Left :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

type Substance ('All ('Left :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) = Tape t <::> Reverse t
type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary = Binary
type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) (Construction (Maybe <:*:> Maybe)) = Binary
type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) (Construction (Maybe <:*:> Maybe)) = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) = Maybe <::> Construction (Maybe <:*:> Maybe)
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) = Maybe <::> Construction (Maybe <:*:> Maybe)
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) = Maybe <::> Construction (Maybe <:*:> Maybe)
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) (Construction (Maybe <:*:> Maybe)) = Maybe <::> Construction (Maybe <:*:> Maybe)
type Substance ('Right :: a -> Wye a) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Substance ('Right :: a -> Wye a) Wye = Maybe
type Substance ('Left :: a -> Wye a) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Substance ('Left :: a -> Wye a) Wye = Maybe
type Substance ('Right :: a -> Wye a) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Substance ('Right :: a -> Wye a) Binary = Binary
type Substance ('Left :: a -> Wye a) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Substance ('Left :: a -> Wye a) Binary = Binary
type Substance ('Right :: a -> Wye a) (Tap ((t <:.:> t) > (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Substance ('Right :: a -> Wye a) (Tap ((t <:.:> t) > (:*:))) = t
type Substance ('Left :: a -> Wye a) (Tap ((t <:.:> t) > (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Substance ('Left :: a -> Wye a) (Tap ((t <:.:> t) > (:*:))) = t
type Substance ('Right :: a -> Wye a) (Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

type Substance ('Right :: a -> Wye a) (Tape t) = t
type Substance ('Left :: a -> Wye a) (Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Zipper

type Substance ('Left :: a -> Wye a) (Tape t) = Reverse t
type Substance ('Right :: a -> Wye a) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Substance ('Left :: a -> Wye a) (Construction (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Substance ('Right :: a -> Wye a) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substance ('Right :: a -> Wye a) ((:*:) s) = Exactly
type Substance ('Left :: a1 -> Wye a1) (Flip (:*:) a2) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substance ('Left :: a1 -> Wye a1) (Flip (:*:) a2) = Exactly
type Substance ('Right :: a -> Wye a) (t <:*:> u) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Substructure

type Substance ('Right :: a -> Wye a) (t <:*:> u) = u
type Substance ('Left :: a -> Wye a) (t <:*:> u) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Substructure

type Substance ('Left :: a -> Wye a) (t <:*:> u) = t
type Primary (Kan ('Left :: Type -> Wye Type) t u b) a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

type Primary (Kan ('Left :: Type -> Wye Type) t u b) a = (t b -> a) -> u b
type Primary (Kan ('Right :: Type -> Wye Type) t u b) a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Kan

type Primary (Kan ('Right :: Type -> Wye Type) t u b) a = (a -> t b) -> u b

wye :: r -> (a -> r) -> (a -> r) -> (a -> a -> r) -> Wye a -> r Source #