syb-with-class-0.6.1.12: Scrap Your Boilerplate With Class

Safe HaskellNone
LanguageHaskell2010

Data.Generics.SYB.WithClass.Basics

Description

(C) 2004--2005 Ralf Laemmel, Simon D. Foster

This module approximates Data.Generics.Basics.

Synopsis

Documentation

class Typeable (a :: k) #

The class Typeable allows a concrete representation of a type to be calculated.

Minimal complete definition

typeRep#

data TyCon #

Instances
Eq TyCon 
Instance details

Defined in GHC.Classes

Methods

(==) :: TyCon -> TyCon -> Bool #

(/=) :: TyCon -> TyCon -> Bool #

Ord TyCon 
Instance details

Defined in GHC.Classes

Methods

compare :: TyCon -> TyCon -> Ordering #

(<) :: TyCon -> TyCon -> Bool #

(<=) :: TyCon -> TyCon -> Bool #

(>) :: TyCon -> TyCon -> Bool #

(>=) :: TyCon -> TyCon -> Bool #

max :: TyCon -> TyCon -> TyCon #

min :: TyCon -> TyCon -> TyCon #

Show TyCon

Since: base-2.1

Instance details

Defined in GHC.Show

Methods

showsPrec :: Int -> TyCon -> ShowS #

show :: TyCon -> String #

showList :: [TyCon] -> ShowS #

Sat (ctx TyCon) => Data ctx TyCon Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> TyCon -> w TyCon Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TyCon Source #

toConstr :: Proxy ctx -> TyCon -> Constr Source #

dataTypeOf :: Proxy ctx -> TyCon -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w TyCon) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w TyCon) Source #

typeOf7 :: Typeable t => t a b c d e f g -> TypeRep #

typeOf6 :: Typeable t => t a b c d e f -> TypeRep #

typeOf5 :: Typeable t => t a b c d e -> TypeRep #

typeOf4 :: Typeable t => t a b c d -> TypeRep #

typeOf3 :: Typeable t => t a b c -> TypeRep #

typeOf2 :: Typeable t => t a b -> TypeRep #

typeOf1 :: Typeable t => t a -> TypeRep #

rnfTypeRep :: TypeRep -> () #

Force a TypeRep to normal form.

typeRepFingerprint :: TypeRep -> Fingerprint #

Takes a value of type a and returns a concrete representation of that type.

Since: base-4.7.0.0

typeRepTyCon :: TypeRep -> TyCon #

Observe the type constructor of a quantified type representation.

typeRepArgs :: TypeRep -> [TypeRep] #

Observe the argument types of a type representation

splitTyConApp :: TypeRep -> (TyCon, [TypeRep]) #

Splits a type constructor application. Note that if the type constructor is polymorphic, this will not return the kinds that were used.

mkFunTy :: TypeRep -> TypeRep -> TypeRep #

Build a function type.

funResultTy :: TypeRep -> TypeRep -> Maybe TypeRep #

Applies a type to a function type. Returns: Just u if the first argument represents a function of type t -> u and the second argument represents a function of type t. Otherwise, returns Nothing.

gcast2 :: (Typeable t, Typeable t') => c (t a b) -> Maybe (c (t' a b)) #

Cast over k1 -> k2 -> k3

gcast1 :: (Typeable t, Typeable t') => c (t a) -> Maybe (c (t' a)) #

Cast over k1 -> k2

gcast :: (Typeable a, Typeable b) => c a -> Maybe (c b) #

A flexible variation parameterised in a type constructor

eqT :: (Typeable a, Typeable b) => Maybe (a :~: b) #

Extract a witness of equality of two types

Since: base-4.7.0.0

cast :: (Typeable a, Typeable b) => a -> Maybe b #

The type-safe cast operation

showsTypeRep :: TypeRep -> ShowS #

Show a type representation

typeRep :: Typeable a => proxy a -> TypeRep #

Takes a value of type a and returns a concrete representation of that type.

Since: base-4.7.0.0

typeOf :: Typeable a => a -> TypeRep #

Observe a type representation for the type of a value.

type TypeRep = SomeTypeRep #

A quantified type representation.

rnfTyCon :: TyCon -> () #

data (a :: k) :~: (b :: k) :: forall k. k -> k -> Type where infix 4 #

Propositional equality. If a :~: b is inhabited by some terminating value, then the type a is the same as the type b. To use this equality in practice, pattern-match on the a :~: b to get out the Refl constructor; in the body of the pattern-match, the compiler knows that a ~ b.

Since: base-4.7.0.0

Constructors

Refl :: forall k (a :: k) (b :: k). a :~: a 
Instances
TestEquality ((:~:) a :: k -> Type)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

testEquality :: (a :~: a0) -> (a :~: b) -> Maybe (a0 :~: b) #

a ~ b => Bounded (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

minBound :: a :~: b #

maxBound :: a :~: b #

a ~ b => Enum (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

succ :: (a :~: b) -> a :~: b #

pred :: (a :~: b) -> a :~: b #

toEnum :: Int -> a :~: b #

fromEnum :: (a :~: b) -> Int #

enumFrom :: (a :~: b) -> [a :~: b] #

enumFromThen :: (a :~: b) -> (a :~: b) -> [a :~: b] #

enumFromTo :: (a :~: b) -> (a :~: b) -> [a :~: b] #

enumFromThenTo :: (a :~: b) -> (a :~: b) -> (a :~: b) -> [a :~: b] #

Eq (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

(==) :: (a :~: b) -> (a :~: b) -> Bool #

(/=) :: (a :~: b) -> (a :~: b) -> Bool #

Ord (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

compare :: (a :~: b) -> (a :~: b) -> Ordering #

(<) :: (a :~: b) -> (a :~: b) -> Bool #

(<=) :: (a :~: b) -> (a :~: b) -> Bool #

(>) :: (a :~: b) -> (a :~: b) -> Bool #

(>=) :: (a :~: b) -> (a :~: b) -> Bool #

max :: (a :~: b) -> (a :~: b) -> a :~: b #

min :: (a :~: b) -> (a :~: b) -> a :~: b #

a ~ b => Read (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

readsPrec :: Int -> ReadS (a :~: b) #

readList :: ReadS [a :~: b] #

readPrec :: ReadPrec (a :~: b) #

readListPrec :: ReadPrec [a :~: b] #

Show (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

showsPrec :: Int -> (a :~: b) -> ShowS #

show :: (a :~: b) -> String #

showList :: [a :~: b] -> ShowS #

data (a :: k1) :~~: (b :: k2) :: forall k1 k2. k1 -> k2 -> Type where infix 4 #

Kind heterogeneous propositional equality. Like :~:, a :~~: b is inhabited by a terminating value if and only if a is the same type as b.

Since: base-4.10.0.0

Constructors

HRefl :: forall k1 k2 (a :: k1) (b :: k2). a :~~: a 
Instances
TestEquality ((:~~:) a :: k -> Type)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

testEquality :: (a :~~: a0) -> (a :~~: b) -> Maybe (a0 :~: b) #

a ~~ b => Bounded (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

minBound :: a :~~: b #

maxBound :: a :~~: b #

a ~~ b => Enum (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

succ :: (a :~~: b) -> a :~~: b #

pred :: (a :~~: b) -> a :~~: b #

toEnum :: Int -> a :~~: b #

fromEnum :: (a :~~: b) -> Int #

enumFrom :: (a :~~: b) -> [a :~~: b] #

enumFromThen :: (a :~~: b) -> (a :~~: b) -> [a :~~: b] #

enumFromTo :: (a :~~: b) -> (a :~~: b) -> [a :~~: b] #

enumFromThenTo :: (a :~~: b) -> (a :~~: b) -> (a :~~: b) -> [a :~~: b] #

Eq (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

(==) :: (a :~~: b) -> (a :~~: b) -> Bool #

(/=) :: (a :~~: b) -> (a :~~: b) -> Bool #

Ord (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

compare :: (a :~~: b) -> (a :~~: b) -> Ordering #

(<) :: (a :~~: b) -> (a :~~: b) -> Bool #

(<=) :: (a :~~: b) -> (a :~~: b) -> Bool #

(>) :: (a :~~: b) -> (a :~~: b) -> Bool #

(>=) :: (a :~~: b) -> (a :~~: b) -> Bool #

max :: (a :~~: b) -> (a :~~: b) -> a :~~: b #

min :: (a :~~: b) -> (a :~~: b) -> a :~~: b #

a ~~ b => Read (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

readsPrec :: Int -> ReadS (a :~~: b) #

readList :: ReadS [a :~~: b] #

readPrec :: ReadPrec (a :~~: b) #

readListPrec :: ReadPrec [a :~~: b] #

Show (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

showsPrec :: Int -> (a :~~: b) -> ShowS #

show :: (a :~~: b) -> String #

showList :: [a :~~: b] -> ShowS #

data Fixity Source #

Fixity of constructors

Constructors

Prefix 
Infix 
Instances
Eq Fixity Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Basics

Methods

(==) :: Fixity -> Fixity -> Bool #

(/=) :: Fixity -> Fixity -> Bool #

Show Fixity Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Basics

type ConIndex = Int Source #

Unique index for datatype constructors. | Textual order is respected. Starts at 1.

data ConstrRep Source #

Public representation of constructors

data DataRep Source #

Public representation of datatypes

Instances
Eq DataRep Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Basics

Methods

(==) :: DataRep -> DataRep -> Bool #

(/=) :: DataRep -> DataRep -> Bool #

Show DataRep Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Basics

data Constr Source #

Representation of constructors

Instances
Eq Constr Source #

Equality of constructors

Instance details

Defined in Data.Generics.SYB.WithClass.Basics

Methods

(==) :: Constr -> Constr -> Bool #

(/=) :: Constr -> Constr -> Bool #

Show Constr Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Basics

data DataType Source #

Representation of datatypes. A package of constructor representations with names of type and module. The list of constructors could be an array, a balanced tree, or others.

Constructors

DataType 

Fields

Instances
Show DataType Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Basics

Sat (ctx DataType) => Data ctx DataType Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> DataType -> w DataType Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DataType Source #

toConstr :: Proxy ctx -> DataType -> Constr Source #

dataTypeOf :: Proxy ctx -> DataType -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w DataType) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w DataType) Source #

newtype Qr r a Source #

The type constructor used in definition of gmapQr

Constructors

Qr 

Fields

type GenericQ ctx r = forall a. Data ctx a => a -> r Source #

type GenericM m ctx = forall a. Data ctx a => a -> m a Source #

Generic monadic transformations

newtype ID x Source #

The identity type constructor

Constructors

ID 

Fields

type GenericT ctx = forall a. Data ctx a => a -> a Source #

class (Typeable a, Sat (ctx a)) => Data ctx a where Source #

Minimal complete definition

toConstr

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> a -> w a Source #

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

toConstr :: Proxy ctx -> a -> Constr Source #

dataTypeOf :: Proxy ctx -> a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w a) Source #

Mediate types and unary type constructors

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w a) Source #

Mediate types and binary type constructors

Instances
Sat (ctx Handle) => Data ctx Handle Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Handle -> w Handle Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Handle Source #

toConstr :: Proxy ctx -> Handle -> Constr Source #

dataTypeOf :: Proxy ctx -> Handle -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Handle) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Handle) Source #

Sat (ctx DataType) => Data ctx DataType Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> DataType -> w DataType Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DataType Source #

toConstr :: Proxy ctx -> DataType -> Constr Source #

dataTypeOf :: Proxy ctx -> DataType -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w DataType) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w DataType) Source #

Sat (ctx TyCon) => Data ctx TyCon Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> TyCon -> w TyCon Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TyCon Source #

toConstr :: Proxy ctx -> TyCon -> Constr Source #

dataTypeOf :: Proxy ctx -> TyCon -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w TyCon) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w TyCon) Source #

Sat (ctx TypeRep) => Data ctx TypeRep Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> TypeRep -> w TypeRep Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TypeRep Source #

toConstr :: Proxy ctx -> TypeRep -> Constr Source #

dataTypeOf :: Proxy ctx -> TypeRep -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w TypeRep) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w TypeRep) Source #

Sat (ctx ()) => Data ctx () Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> () -> w () Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c () Source #

toConstr :: Proxy ctx -> () -> Constr Source #

dataTypeOf :: Proxy ctx -> () -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w ()) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w ()) Source #

Sat (ctx Ordering) => Data ctx Ordering Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Ordering -> w Ordering Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Ordering Source #

toConstr :: Proxy ctx -> Ordering -> Constr Source #

dataTypeOf :: Proxy ctx -> Ordering -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Ordering) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Ordering) Source #

Sat (ctx Word64) => Data ctx Word64 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Word64 -> w Word64 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Word64 Source #

toConstr :: Proxy ctx -> Word64 -> Constr Source #

dataTypeOf :: Proxy ctx -> Word64 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Word64) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Word64) Source #

Sat (ctx Word32) => Data ctx Word32 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Word32 -> w Word32 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Word32 Source #

toConstr :: Proxy ctx -> Word32 -> Constr Source #

dataTypeOf :: Proxy ctx -> Word32 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Word32) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Word32) Source #

Sat (ctx Word16) => Data ctx Word16 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Word16 -> w Word16 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Word16 Source #

toConstr :: Proxy ctx -> Word16 -> Constr Source #

dataTypeOf :: Proxy ctx -> Word16 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Word16) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Word16) Source #

Sat (ctx Word8) => Data ctx Word8 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Word8 -> w Word8 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Word8 Source #

toConstr :: Proxy ctx -> Word8 -> Constr Source #

dataTypeOf :: Proxy ctx -> Word8 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Word8) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Word8) Source #

Sat (ctx Word) => Data ctx Word Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Word -> w Word Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Word Source #

toConstr :: Proxy ctx -> Word -> Constr Source #

dataTypeOf :: Proxy ctx -> Word -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Word) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Word) Source #

Sat (ctx Int64) => Data ctx Int64 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Int64 -> w Int64 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Int64 Source #

toConstr :: Proxy ctx -> Int64 -> Constr Source #

dataTypeOf :: Proxy ctx -> Int64 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Int64) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Int64) Source #

Sat (ctx Int32) => Data ctx Int32 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Int32 -> w Int32 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Int32 Source #

toConstr :: Proxy ctx -> Int32 -> Constr Source #

dataTypeOf :: Proxy ctx -> Int32 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Int32) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Int32) Source #

Sat (ctx Int16) => Data ctx Int16 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Int16 -> w Int16 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Int16 Source #

toConstr :: Proxy ctx -> Int16 -> Constr Source #

dataTypeOf :: Proxy ctx -> Int16 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Int16) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Int16) Source #

Sat (ctx Int8) => Data ctx Int8 Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Int8 -> w Int8 Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Int8 Source #

toConstr :: Proxy ctx -> Int8 -> Constr Source #

dataTypeOf :: Proxy ctx -> Int8 -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Int8) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Int8) Source #

Sat (ctx Integer) => Data ctx Integer Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Integer -> w Integer Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Integer Source #

toConstr :: Proxy ctx -> Integer -> Constr Source #

dataTypeOf :: Proxy ctx -> Integer -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Integer) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Integer) Source #

Sat (ctx Int) => Data ctx Int Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Int -> w Int Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Int Source #

toConstr :: Proxy ctx -> Int -> Constr Source #

dataTypeOf :: Proxy ctx -> Int -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Int) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Int) Source #

Sat (ctx Double) => Data ctx Double Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Double -> w Double Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Double Source #

toConstr :: Proxy ctx -> Double -> Constr Source #

dataTypeOf :: Proxy ctx -> Double -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Double) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Double) Source #

Sat (ctx Float) => Data ctx Float Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Float -> w Float Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Float Source #

toConstr :: Proxy ctx -> Float -> Constr Source #

dataTypeOf :: Proxy ctx -> Float -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Float) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Float) Source #

Sat (ctx Char) => Data ctx Char Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Char -> w Char Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Char Source #

toConstr :: Proxy ctx -> Char -> Constr Source #

dataTypeOf :: Proxy ctx -> Char -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Char) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Char) Source #

Sat (ctx Bool) => Data ctx Bool Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Bool -> w Bool Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bool Source #

toConstr :: Proxy ctx -> Bool -> Constr Source #

dataTypeOf :: Proxy ctx -> Bool -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w Bool) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w Bool) Source #

(Data ctx (ForeignPtr Word8), Data ctx Int, Sat (ctx ByteString), Sat (ctx (ForeignPtr Word8)), Sat (ctx Int)) => Data ctx ByteString Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> ByteString -> w ByteString Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteString Source #

toConstr :: Proxy ctx -> ByteString -> Constr Source #

dataTypeOf :: Proxy ctx -> ByteString -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w ByteString) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w ByteString) Source #

(Data ctx ByteString, Sat (ctx ByteString), Sat (ctx ByteString)) => Data ctx ByteString Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> ByteString -> w ByteString Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteString Source #

toConstr :: Proxy ctx -> ByteString -> Constr Source #

dataTypeOf :: Proxy ctx -> ByteString -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w ByteString) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w ByteString) Source #

(Sat (ctx (Set a)), Data ctx a, Ord a) => Data ctx (Set a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Set a -> w (Set a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Set a) Source #

toConstr :: Proxy ctx -> Set a -> Constr Source #

dataTypeOf :: Proxy ctx -> Set a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (Set a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (Set a)) Source #

(Sat (ctx (MVar a)), Typeable a) => Data ctx (MVar a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> MVar a -> w (MVar a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (MVar a) Source #

toConstr :: Proxy ctx -> MVar a -> Constr Source #

dataTypeOf :: Proxy ctx -> MVar a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (MVar a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (MVar a)) Source #

(Sat (ctx (ForeignPtr a)), Typeable a) => Data ctx (ForeignPtr a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> ForeignPtr a -> w (ForeignPtr a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ForeignPtr a) Source #

toConstr :: Proxy ctx -> ForeignPtr a -> Constr Source #

dataTypeOf :: Proxy ctx -> ForeignPtr a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (ForeignPtr a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (ForeignPtr a)) Source #

(Sat (ctx (IORef a)), Typeable a) => Data ctx (IORef a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> IORef a -> w (IORef a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (IORef a) Source #

toConstr :: Proxy ctx -> IORef a -> Constr Source #

dataTypeOf :: Proxy ctx -> IORef a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (IORef a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (IORef a)) Source #

(Sat (ctx (StablePtr a)), Typeable a) => Data ctx (StablePtr a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> StablePtr a -> w (StablePtr a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (StablePtr a) Source #

toConstr :: Proxy ctx -> StablePtr a -> Constr Source #

dataTypeOf :: Proxy ctx -> StablePtr a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (StablePtr a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (StablePtr a)) Source #

(Sat (ctx (Ptr a)), Typeable a) => Data ctx (Ptr a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Ptr a -> w (Ptr a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Ptr a) Source #

toConstr :: Proxy ctx -> Ptr a -> Constr Source #

dataTypeOf :: Proxy ctx -> Ptr a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (Ptr a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (Ptr a)) Source #

(Sat (ctx (IO a)), Typeable a) => Data ctx (IO a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> IO a -> w (IO a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (IO a) Source #

toConstr :: Proxy ctx -> IO a -> Constr Source #

dataTypeOf :: Proxy ctx -> IO a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (IO a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (IO a)) Source #

(Sat (ctx (Maybe a)), Data ctx a) => Data ctx (Maybe a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Maybe a -> w (Maybe a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Maybe a) Source #

toConstr :: Proxy ctx -> Maybe a -> Constr Source #

dataTypeOf :: Proxy ctx -> Maybe a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (Maybe a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (Maybe a)) Source #

(Sat (ctx [a]), Data ctx a) => Data ctx [a] Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> [a] -> w [a] Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c [a] Source #

toConstr :: Proxy ctx -> [a] -> Constr Source #

dataTypeOf :: Proxy ctx -> [a] -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w [a]) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w [a]) Source #

(Sat (ctx (Ratio a)), Data ctx a, Integral a) => Data ctx (Ratio a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> Ratio a -> w (Ratio a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Ratio a) Source #

toConstr :: Proxy ctx -> Ratio a -> Constr Source #

dataTypeOf :: Proxy ctx -> Ratio a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (Ratio a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (Ratio a)) Source #

(Sat (ctx (Map a b)), Data ctx a, Data ctx b, Ord a) => Data ctx (Map a b) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c. Data ctx b0 => w (b0 -> c) -> b0 -> w c) -> (forall g. g -> w g) -> Map a b -> w (Map a b) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Map a b) Source #

toConstr :: Proxy ctx -> Map a b -> Constr Source #

dataTypeOf :: Proxy ctx -> Map a b -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (Map a b)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c. (Data ctx b0, Data ctx c) => w (t b0 c)) -> Maybe (w (Map a b)) Source #

(Sat (ctx [b]), Sat (ctx (Array a b)), Typeable a, Data ctx b, Data ctx [b], Ix a) => Data ctx (Array a b) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c. Data ctx b0 => w (b0 -> c) -> b0 -> w c) -> (forall g. g -> w g) -> Array a b -> w (Array a b) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Array a b) Source #

toConstr :: Proxy ctx -> Array a b -> Constr Source #

dataTypeOf :: Proxy ctx -> Array a b -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (Array a b)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c. (Data ctx b0, Data ctx c) => w (t b0 c)) -> Maybe (w (Array a b)) Source #

(Sat (ctx (ST s a)), Typeable s, Typeable a) => Data ctx (ST s a) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b c. Data ctx b => w (b -> c) -> b -> w c) -> (forall g. g -> w g) -> ST s a -> w (ST s a) Source #

gunfold :: Proxy ctx -> (forall b r. Data ctx b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ST s a) Source #

toConstr :: Proxy ctx -> ST s a -> Constr Source #

dataTypeOf :: Proxy ctx -> ST s a -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b. Data ctx b => w (t b)) -> Maybe (w (ST s a)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b c. (Data ctx b, Data ctx c) => w (t b c)) -> Maybe (w (ST s a)) Source #

(Sat (ctx (a, b)), Data ctx a, Data ctx b) => Data ctx (a, b) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c. Data ctx b0 => w (b0 -> c) -> b0 -> w c) -> (forall g. g -> w g) -> (a, b) -> w (a, b) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (a, b) Source #

toConstr :: Proxy ctx -> (a, b) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a, b) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a, b)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c. (Data ctx b0, Data ctx c) => w (t b0 c)) -> Maybe (w (a, b)) Source #

(Sat (ctx (a -> b)), Data ctx a, Data ctx b) => Data ctx (a -> b) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c. Data ctx b0 => w (b0 -> c) -> b0 -> w c) -> (forall g. g -> w g) -> (a -> b) -> w (a -> b) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (a -> b) Source #

toConstr :: Proxy ctx -> (a -> b) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a -> b) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a -> b)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c. (Data ctx b0, Data ctx c) => w (t b0 c)) -> Maybe (w (a -> b)) Source #

(Sat (ctx (Either a b)), Data ctx a, Data ctx b) => Data ctx (Either a b) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c. Data ctx b0 => w (b0 -> c) -> b0 -> w c) -> (forall g. g -> w g) -> Either a b -> w (Either a b) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Either a b) Source #

toConstr :: Proxy ctx -> Either a b -> Constr Source #

dataTypeOf :: Proxy ctx -> Either a b -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (Either a b)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c. (Data ctx b0, Data ctx c) => w (t b0 c)) -> Maybe (w (Either a b)) Source #

(Sat (ctx (a, b, c)), Data ctx a, Data ctx b, Data ctx c) => Data ctx (a, b, c) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c0. Data ctx b0 => w (b0 -> c0) -> b0 -> w c0) -> (forall g. g -> w g) -> (a, b, c) -> w (a, b, c) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c0 (b0 -> r) -> c0 r) -> (forall r. r -> c0 r) -> Constr -> c0 (a, b, c) Source #

toConstr :: Proxy ctx -> (a, b, c) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a, b, c) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a, b, c)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c0. (Data ctx b0, Data ctx c0) => w (t b0 c0)) -> Maybe (w (a, b, c)) Source #

(Sat (ctx (a, b, c, d)), Data ctx a, Data ctx b, Data ctx c, Data ctx d) => Data ctx (a, b, c, d) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c0. Data ctx b0 => w (b0 -> c0) -> b0 -> w c0) -> (forall g. g -> w g) -> (a, b, c, d) -> w (a, b, c, d) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c0 (b0 -> r) -> c0 r) -> (forall r. r -> c0 r) -> Constr -> c0 (a, b, c, d) Source #

toConstr :: Proxy ctx -> (a, b, c, d) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a, b, c, d) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a, b, c, d)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c0. (Data ctx b0, Data ctx c0) => w (t b0 c0)) -> Maybe (w (a, b, c, d)) Source #

(Sat (ctx (a, b, c, d, e)), Data ctx a, Data ctx b, Data ctx c, Data ctx d, Data ctx e) => Data ctx (a, b, c, d, e) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c0. Data ctx b0 => w (b0 -> c0) -> b0 -> w c0) -> (forall g. g -> w g) -> (a, b, c, d, e) -> w (a, b, c, d, e) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c0 (b0 -> r) -> c0 r) -> (forall r. r -> c0 r) -> Constr -> c0 (a, b, c, d, e) Source #

toConstr :: Proxy ctx -> (a, b, c, d, e) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a, b, c, d, e) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a, b, c, d, e)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c0. (Data ctx b0, Data ctx c0) => w (t b0 c0)) -> Maybe (w (a, b, c, d, e)) Source #

(Sat (ctx (a, b, c, d, e, f)), Data ctx a, Data ctx b, Data ctx c, Data ctx d, Data ctx e, Data ctx f) => Data ctx (a, b, c, d, e, f) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c0. Data ctx b0 => w (b0 -> c0) -> b0 -> w c0) -> (forall g. g -> w g) -> (a, b, c, d, e, f) -> w (a, b, c, d, e, f) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c0 (b0 -> r) -> c0 r) -> (forall r. r -> c0 r) -> Constr -> c0 (a, b, c, d, e, f) Source #

toConstr :: Proxy ctx -> (a, b, c, d, e, f) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a, b, c, d, e, f) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a, b, c, d, e, f)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c0. (Data ctx b0, Data ctx c0) => w (t b0 c0)) -> Maybe (w (a, b, c, d, e, f)) Source #

(Sat (ctx (a, b, c, d, e, f, g)), Data ctx a, Data ctx b, Data ctx c, Data ctx d, Data ctx e, Data ctx f, Data ctx g) => Data ctx (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Data.Generics.SYB.WithClass.Instances

Methods

gfoldl :: Proxy ctx -> (forall b0 c0. Data ctx b0 => w (b0 -> c0) -> b0 -> w c0) -> (forall g0. g0 -> w g0) -> (a, b, c, d, e, f, g) -> w (a, b, c, d, e, f, g) Source #

gunfold :: Proxy ctx -> (forall b0 r. Data ctx b0 => c0 (b0 -> r) -> c0 r) -> (forall r. r -> c0 r) -> Constr -> c0 (a, b, c, d, e, f, g) Source #

toConstr :: Proxy ctx -> (a, b, c, d, e, f, g) -> Constr Source #

dataTypeOf :: Proxy ctx -> (a, b, c, d, e, f, g) -> DataType Source #

dataCast1 :: Typeable t => Proxy ctx -> (forall b0. Data ctx b0 => w (t b0)) -> Maybe (w (a, b, c, d, e, f, g)) Source #

dataCast2 :: Typeable t => Proxy ctx -> (forall b0 c0. (Data ctx b0, Data ctx c0) => w (t b0 c0)) -> Maybe (w (a, b, c, d, e, f, g)) Source #

data Proxy (a :: * -> *) Source #

gmapT :: Proxy ctx -> GenericT ctx -> GenericT ctx Source #

Generic map for transformations

gmapM :: Monad m => Proxy ctx -> GenericM m ctx -> GenericM m ctx Source #

Generic map for monadic transformations

gmapQ :: Proxy ctx -> GenericQ ctx r -> GenericQ ctx [r] Source #

Map for queries

gmapQr :: Data ctx a => Proxy ctx -> (r' -> r -> r) -> r -> GenericQ ctx r' -> a -> r Source #

fromConstr :: Data ctx a => Proxy ctx -> Constr -> a Source #

Build a term skeleton

fromConstrB :: Data ctx a => Proxy ctx -> (forall b. Data ctx b => b) -> Constr -> a Source #

Build a term and use a generic function for subterms

fromConstrM :: (Monad m, Data ctx a) => Proxy ctx -> (forall b. Data ctx b => m b) -> Constr -> m a Source #

Monadic variation on "fromConstrB"

dataTypeName :: DataType -> String Source #

Gets the type constructor including the module

dataTypeRep :: DataType -> DataRep Source #

Gets the public presentation of datatypes

constrType :: Constr -> DataType Source #

Gets the datatype of a constructor

constrRep :: Constr -> ConstrRep Source #

Gets the public presentation of constructors

repConstr :: DataType -> ConstrRep -> Constr Source #

Look up a constructor by its representation

mkDataType :: String -> [Constr] -> DataType Source #

Constructs an algebraic datatype

mkConstr :: DataType -> String -> [String] -> Fixity -> Constr Source #

Constructs a constructor

dataTypeConstrs :: DataType -> [Constr] Source #

Gets the constructors

constrFields :: Constr -> [String] Source #

Gets the field labels of a constructor

constrFixity :: Constr -> Fixity Source #

Gets the fixity of a constructor

showConstr :: Constr -> String Source #

Gets the string for a constructor

readConstr :: DataType -> String -> Maybe Constr Source #

Lookup a constructor via a string

isAlgType :: DataType -> Bool Source #

Test for an algebraic type

indexConstr :: DataType -> ConIndex -> Constr Source #

Gets the constructor for an index

constrIndex :: Constr -> ConIndex Source #

Gets the index of a constructor

maxConstrIndex :: DataType -> ConIndex Source #

Gets the maximum constructor index

mkIntType :: String -> DataType Source #

Constructs the Int type

mkFloatType :: String -> DataType Source #

Constructs the Float type

mkStringType :: String -> DataType Source #

Constructs the String type

mkPrimType :: DataRep -> String -> DataType Source #

Helper for mkIntType, mkFloatType, mkStringType

mkPrimCon :: DataType -> String -> ConstrRep -> Constr Source #

Makes a constructor for primitive types

mkIntConstr :: DataType -> Integer -> Constr Source #

Makes a constructor for an Int

mkFloatConstr :: DataType -> Double -> Constr Source #

Makes a constructor for a Float

mkStringConstr :: DataType -> String -> Constr Source #

Makes a constructor for a String

mkNorepType :: String -> DataType Source #

Constructs a non-representation

isNorepType :: DataType -> Bool Source #

Test for a non-representable type