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

Pandora.Paradigm.Structure.Ability.Focusable

Documentation

class Focusable f t where Source #

Associated Types

type Focusing (f :: * -> k) (t :: * -> *) a Source #

Methods

focusing :: Tagged f (t a) :-. Focusing f t a Source #

Instances

Instances details
Focusable ('Root :: Type -> Location Type) Rose Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Focusing 'Root Rose a Source #

(forall a. Chain a) => Focusable ('Root :: Type -> Location Type) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Focusing 'Root Binary a Source #

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

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Focusing 'Head List a Source #

Focusable ('Left :: Type -> Wye Type) (Product s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Focusing 'Left (Product s) a Source #

Focusable ('Right :: Type -> Wye Type) (Product s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Focusing 'Right (Product s) a Source #

Focusable ('Root :: Type -> Location Type) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Focusing 'Root (Construction Wye) a Source #

Focusable ('Root :: Type -> Location Type) (Construction List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Focusing 'Root (Construction List) a Source #

Focusable ('Head :: Type -> Location Type) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Focusable ('Head :: Type -> Location Type) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Focusing 'Head (Tap ((List <:.:> List) := (:*:))) a Source #

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

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Focusing 'Head (Construction Maybe) a Source #

focus :: forall f t a. Focusable f t => t a :-. Focusing f t a Source #

data Location a Source #

Constructors

Root a 
Head a 

Instances

Instances details
Focusable ('Root :: Type -> Location Type) Rose Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Focusing 'Root Rose a Source #

(forall a. Chain a) => Focusable ('Root :: Type -> Location Type) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Focusing 'Root Binary a Source #

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

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Focusing 'Head List a Source #

Focusable ('Root :: Type -> Location Type) (Construction Wye) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Focusing 'Root (Construction Wye) a Source #

Focusable ('Root :: Type -> Location Type) (Construction List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Focusing 'Root (Construction List) a Source #

Focusable ('Head :: Type -> Location Type) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Focusable ('Head :: Type -> Location Type) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Focusing 'Head (Tap ((List <:.:> List) := (:*:))) a Source #

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

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Focusing 'Head (Construction Maybe) a Source #

type Focusing ('Root :: Type -> Location Type) Rose a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Focusing ('Root :: Type -> Location Type) Rose a = Maybe a
type Focusing ('Root :: Type -> Location Type) Binary a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Focusing ('Root :: Type -> Location Type) Binary a = Maybe a
type Focusing ('Head :: Type -> Location Type) List a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Focusing ('Head :: Type -> Location Type) List a = Maybe a
type Focusing ('Root :: Type -> Location Type) (Construction Wye) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Focusing ('Root :: Type -> Location Type) (Construction Wye) a = a
type Focusing ('Root :: Type -> Location Type) (Construction List) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Focusing ('Root :: Type -> Location Type) (Construction List) a = a
type Focusing ('Head :: Type -> Location Type) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Focusing ('Head :: Type -> Location Type) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) a = a
type Focusing ('Head :: Type -> Location Type) (Tap ((List <:.:> List) := (:*:))) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Focusing ('Head :: Type -> Location Type) (Tap ((List <:.:> List) := (:*:))) a = a
type Focusing ('Head :: Type -> Location Type) (Construction Maybe) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Focusing ('Head :: Type -> Location Type) (Construction Maybe) a = a