Safe Haskell | None |
---|---|
Language | Haskell2010 |
Generics.SOP.Metadata
Contents
Description
Metadata about what a datatype looks like
In generics-sop
, the metadata is completely independent of the main
universe. Many generic functions will use this metadata, but other don't,
and yet others might need completely different metadata.
This module defines a datatype to represent standard metadata, i.e., names of the datatype, its constructors, and possibly its record selectors. Metadata descriptions are in general GADTs indexed by the code of the datatype they're associated with, so matching on the metadata will reveal information about the shape of the datatype.
Synopsis
- data DatatypeInfo (a :: [[Type]]) where
- ADT :: forall (a :: [[Type]]). ModuleName -> DatatypeName -> NP ConstructorInfo a -> POP StrictnessInfo a -> DatatypeInfo a
- Newtype :: forall x. ModuleName -> DatatypeName -> ConstructorInfo '[x] -> DatatypeInfo '['[x]]
- moduleName :: forall (xss :: [[Type]]). DatatypeInfo xss -> ModuleName
- datatypeName :: forall (xss :: [[Type]]). DatatypeInfo xss -> DatatypeName
- constructorInfo :: forall (xss :: [[Type]]). DatatypeInfo xss -> NP ConstructorInfo xss
- data ConstructorInfo (a :: [Type]) where
- Constructor :: forall (a :: [Type]). SListI a => ConstructorName -> ConstructorInfo a
- Infix :: forall x y. ConstructorName -> Associativity -> Fixity -> ConstructorInfo '[x, y]
- Record :: forall (a :: [Type]). SListI a => ConstructorName -> NP FieldInfo a -> ConstructorInfo a
- constructorName :: forall (xs :: [Type]). ConstructorInfo xs -> ConstructorName
- data FieldInfo a where
- fieldName :: FieldInfo a -> FieldName
- type DatatypeName = String
- type ModuleName = String
- type ConstructorName = String
- type FieldName = String
- type Fixity = Int
- data StrictnessInfo a where
- StrictnessInfo :: forall a. SourceUnpackedness -> SourceStrictness -> DecidedStrictness -> StrictnessInfo a
- data Associativity
- data DecidedStrictness
- data SourceStrictness
- data SourceUnpackedness
Documentation
data DatatypeInfo (a :: [[Type]]) where Source #
Metadata for a datatype.
A value of type
contains the information about a datatype
that is not contained in DatatypeInfo
c
. This information consists
primarily of the names of the datatype, its constructors, and possibly its
record selectors.Code
c
The constructor indicates whether the datatype has been declared using newtype
or not.
Constructors
ADT :: forall (a :: [[Type]]). ModuleName -> DatatypeName -> NP ConstructorInfo a -> POP StrictnessInfo a -> DatatypeInfo a | |
Newtype :: forall x. ModuleName -> DatatypeName -> ConstructorInfo '[x] -> DatatypeInfo '['[x]] |
Instances
moduleName :: forall (xss :: [[Type]]). DatatypeInfo xss -> ModuleName Source #
The module name where a datatype is defined.
Since: 0.2.3.0
datatypeName :: forall (xss :: [[Type]]). DatatypeInfo xss -> DatatypeName Source #
The name of a datatype (or newtype).
Since: 0.2.3.0
constructorInfo :: forall (xss :: [[Type]]). DatatypeInfo xss -> NP ConstructorInfo xss Source #
The constructor info for a datatype (or newtype).
Since: 0.2.3.0
data ConstructorInfo (a :: [Type]) where Source #
Metadata for a single constructor.
This is indexed by the product structure of the constructor components.
Constructors
Constructor :: forall (a :: [Type]). SListI a => ConstructorName -> ConstructorInfo a | |
Infix :: forall x y. ConstructorName -> Associativity -> Fixity -> ConstructorInfo '[x, y] | |
Record :: forall (a :: [Type]). SListI a => ConstructorName -> NP FieldInfo a -> ConstructorInfo a |
Instances
constructorName :: forall (xs :: [Type]). ConstructorInfo xs -> ConstructorName Source #
The name of a constructor.
Since: 0.2.3.0
data FieldInfo a where Source #
For records, this functor maps the component to its selector name.
Instances
Functor FieldInfo Source # | |
Show (FieldInfo a) Source # | |
Eq (FieldInfo a) Source # | |
Ord (FieldInfo a) Source # | |
Defined in Generics.SOP.Metadata |
type DatatypeName = String Source #
The name of a datatype.
type ModuleName = String Source #
The name of a module.
type ConstructorName = String Source #
The name of a data constructor.
data StrictnessInfo a where Source #
Metadata for strictness information of a field.
Indexed by the type of the field.
Since: 0.4.0.0
Constructors
StrictnessInfo :: forall a. SourceUnpackedness -> SourceStrictness -> DecidedStrictness -> StrictnessInfo a |
Instances
re-exports
data Associativity #
Constructors
LeftAssociative | |
RightAssociative | |
NotAssociative |
Instances
Generic Associativity Source # | |||||
Defined in Generics.SOP.Instances Associated Types
Methods from :: Associativity -> Rep Associativity Source # to :: Rep Associativity -> Associativity Source # | |||||
HasDatatypeInfo Associativity Source # | |||||
Defined in Generics.SOP.Instances Associated Types
Methods datatypeInfo :: proxy Associativity -> DatatypeInfo (Code Associativity) Source # | |||||
Data Associativity | |||||
Defined in GHC.Internal.Data.Data Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Associativity -> c Associativity gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Associativity toConstr :: Associativity -> Constr dataTypeOf :: Associativity -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Associativity) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Associativity) gmapT :: (forall b. Data b => b -> b) -> Associativity -> Associativity gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Associativity -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Associativity -> r gmapQ :: (forall d. Data d => d -> u) -> Associativity -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Associativity -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Associativity -> m Associativity gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Associativity -> m Associativity gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Associativity -> m Associativity | |||||
Bounded Associativity | |||||
Defined in GHC.Internal.Generics | |||||
Enum Associativity | |||||
Defined in GHC.Internal.Generics Methods succ :: Associativity -> Associativity pred :: Associativity -> Associativity toEnum :: Int -> Associativity fromEnum :: Associativity -> Int enumFrom :: Associativity -> [Associativity] enumFromThen :: Associativity -> Associativity -> [Associativity] enumFromTo :: Associativity -> Associativity -> [Associativity] enumFromThenTo :: Associativity -> Associativity -> Associativity -> [Associativity] | |||||
Generic Associativity | |||||
Defined in GHC.Internal.Generics Associated Types
| |||||
SingKind Associativity | |||||
Defined in GHC.Internal.Generics Associated Types
Methods fromSing :: forall (a :: Associativity). Sing a -> DemoteRep Associativity | |||||
Ix Associativity | |||||
Defined in GHC.Internal.Generics Methods range :: (Associativity, Associativity) -> [Associativity] index :: (Associativity, Associativity) -> Associativity -> Int unsafeIndex :: (Associativity, Associativity) -> Associativity -> Int inRange :: (Associativity, Associativity) -> Associativity -> Bool rangeSize :: (Associativity, Associativity) -> Int unsafeRangeSize :: (Associativity, Associativity) -> Int | |||||
Read Associativity | |||||
Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS Associativity readList :: ReadS [Associativity] readPrec :: ReadPrec Associativity readListPrec :: ReadPrec [Associativity] | |||||
Show Associativity | |||||
Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Associativity -> ShowS show :: Associativity -> String showList :: [Associativity] -> ShowS | |||||
Eq Associativity | |||||
Defined in GHC.Internal.Generics | |||||
Ord Associativity | |||||
Defined in GHC.Internal.Generics Methods compare :: Associativity -> Associativity -> Ordering (<) :: Associativity -> Associativity -> Bool (<=) :: Associativity -> Associativity -> Bool (>) :: Associativity -> Associativity -> Bool (>=) :: Associativity -> Associativity -> Bool max :: Associativity -> Associativity -> Associativity min :: Associativity -> Associativity -> Associativity | |||||
SingI 'LeftAssociative | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'LeftAssociative | |||||
SingI 'NotAssociative | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'NotAssociative | |||||
SingI 'RightAssociative | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'RightAssociative | |||||
type Code Associativity Source # | |||||
Defined in Generics.SOP.Instances | |||||
type DatatypeInfoOf Associativity Source # | |||||
Defined in Generics.SOP.Instances type DatatypeInfoOf Associativity = 'ADT "GHC.Internal.Generics" "Associativity" '['Constructor "LeftAssociative", 'Constructor "RightAssociative", 'Constructor "NotAssociative"] '['[] :: [StrictnessInfo], '[] :: [StrictnessInfo], '[] :: [StrictnessInfo]] | |||||
type DemoteRep Associativity | |||||
Defined in GHC.Internal.Generics | |||||
type Rep Associativity | |||||
Defined in GHC.Internal.Generics type Rep Associativity = D1 ('MetaData "Associativity" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "LeftAssociative" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RightAssociative" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NotAssociative" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
data Sing (a :: Associativity) | |||||
Defined in GHC.Internal.Generics data Sing (a :: Associativity) where
|
data DecidedStrictness #
Constructors
DecidedLazy | |
DecidedStrict | |
DecidedUnpack |
Instances
data SourceStrictness #
Constructors
NoSourceStrictness | |
SourceLazy | |
SourceStrict |
Instances
Generic SourceStrictness Source # | |||||
Defined in Generics.SOP.Instances Associated Types
Methods from :: SourceStrictness -> Rep SourceStrictness Source # to :: Rep SourceStrictness -> SourceStrictness Source # | |||||
HasDatatypeInfo SourceStrictness Source # | |||||
Defined in Generics.SOP.Instances Associated Types
Methods datatypeInfo :: proxy SourceStrictness -> DatatypeInfo (Code SourceStrictness) Source # | |||||
Data SourceStrictness | |||||
Defined in GHC.Internal.Data.Data Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SourceStrictness -> c SourceStrictness gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SourceStrictness toConstr :: SourceStrictness -> Constr dataTypeOf :: SourceStrictness -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SourceStrictness) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SourceStrictness) gmapT :: (forall b. Data b => b -> b) -> SourceStrictness -> SourceStrictness gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SourceStrictness -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SourceStrictness -> r gmapQ :: (forall d. Data d => d -> u) -> SourceStrictness -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SourceStrictness -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SourceStrictness -> m SourceStrictness gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceStrictness -> m SourceStrictness gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceStrictness -> m SourceStrictness | |||||
Bounded SourceStrictness | |||||
Defined in GHC.Internal.Generics | |||||
Enum SourceStrictness | |||||
Defined in GHC.Internal.Generics Methods succ :: SourceStrictness -> SourceStrictness pred :: SourceStrictness -> SourceStrictness toEnum :: Int -> SourceStrictness fromEnum :: SourceStrictness -> Int enumFrom :: SourceStrictness -> [SourceStrictness] enumFromThen :: SourceStrictness -> SourceStrictness -> [SourceStrictness] enumFromTo :: SourceStrictness -> SourceStrictness -> [SourceStrictness] enumFromThenTo :: SourceStrictness -> SourceStrictness -> SourceStrictness -> [SourceStrictness] | |||||
Generic SourceStrictness | |||||
Defined in GHC.Internal.Generics Associated Types
Methods from :: SourceStrictness -> Rep SourceStrictness x to :: Rep SourceStrictness x -> SourceStrictness | |||||
SingKind SourceStrictness | |||||
Defined in GHC.Internal.Generics Associated Types
Methods fromSing :: forall (a :: SourceStrictness). Sing a -> DemoteRep SourceStrictness | |||||
Ix SourceStrictness | |||||
Defined in GHC.Internal.Generics Methods range :: (SourceStrictness, SourceStrictness) -> [SourceStrictness] index :: (SourceStrictness, SourceStrictness) -> SourceStrictness -> Int unsafeIndex :: (SourceStrictness, SourceStrictness) -> SourceStrictness -> Int inRange :: (SourceStrictness, SourceStrictness) -> SourceStrictness -> Bool rangeSize :: (SourceStrictness, SourceStrictness) -> Int unsafeRangeSize :: (SourceStrictness, SourceStrictness) -> Int | |||||
Read SourceStrictness | |||||
Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS SourceStrictness readList :: ReadS [SourceStrictness] readPrec :: ReadPrec SourceStrictness readListPrec :: ReadPrec [SourceStrictness] | |||||
Show SourceStrictness | |||||
Defined in GHC.Internal.Generics Methods showsPrec :: Int -> SourceStrictness -> ShowS show :: SourceStrictness -> String showList :: [SourceStrictness] -> ShowS | |||||
Eq SourceStrictness | |||||
Defined in GHC.Internal.Generics Methods (==) :: SourceStrictness -> SourceStrictness -> Bool (/=) :: SourceStrictness -> SourceStrictness -> Bool | |||||
Ord SourceStrictness | |||||
Defined in GHC.Internal.Generics Methods compare :: SourceStrictness -> SourceStrictness -> Ordering (<) :: SourceStrictness -> SourceStrictness -> Bool (<=) :: SourceStrictness -> SourceStrictness -> Bool (>) :: SourceStrictness -> SourceStrictness -> Bool (>=) :: SourceStrictness -> SourceStrictness -> Bool max :: SourceStrictness -> SourceStrictness -> SourceStrictness min :: SourceStrictness -> SourceStrictness -> SourceStrictness | |||||
SingI 'NoSourceStrictness | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'NoSourceStrictness | |||||
SingI 'SourceLazy | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'SourceLazy | |||||
SingI 'SourceStrict | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'SourceStrict | |||||
type Code SourceStrictness Source # | |||||
Defined in Generics.SOP.Instances | |||||
type DatatypeInfoOf SourceStrictness Source # | |||||
Defined in Generics.SOP.Instances type DatatypeInfoOf SourceStrictness = 'ADT "GHC.Internal.Generics" "SourceStrictness" '['Constructor "NoSourceStrictness", 'Constructor "SourceLazy", 'Constructor "SourceStrict"] '['[] :: [StrictnessInfo], '[] :: [StrictnessInfo], '[] :: [StrictnessInfo]] | |||||
type DemoteRep SourceStrictness | |||||
Defined in GHC.Internal.Generics | |||||
type Rep SourceStrictness | |||||
Defined in GHC.Internal.Generics type Rep SourceStrictness = D1 ('MetaData "SourceStrictness" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "NoSourceStrictness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SourceLazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SourceStrict" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
data Sing (a :: SourceStrictness) | |||||
Defined in GHC.Internal.Generics data Sing (a :: SourceStrictness) where
|
data SourceUnpackedness #
Constructors
NoSourceUnpackedness | |
SourceNoUnpack | |
SourceUnpack |
Instances
Generic SourceUnpackedness Source # | |||||
Defined in Generics.SOP.Instances Associated Types
Methods from :: SourceUnpackedness -> Rep SourceUnpackedness Source # | |||||
HasDatatypeInfo SourceUnpackedness Source # | |||||
Defined in Generics.SOP.Instances Associated Types
Methods datatypeInfo :: proxy SourceUnpackedness -> DatatypeInfo (Code SourceUnpackedness) Source # | |||||
Data SourceUnpackedness | |||||
Defined in GHC.Internal.Data.Data Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SourceUnpackedness -> c SourceUnpackedness gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SourceUnpackedness toConstr :: SourceUnpackedness -> Constr dataTypeOf :: SourceUnpackedness -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SourceUnpackedness) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SourceUnpackedness) gmapT :: (forall b. Data b => b -> b) -> SourceUnpackedness -> SourceUnpackedness gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SourceUnpackedness -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SourceUnpackedness -> r gmapQ :: (forall d. Data d => d -> u) -> SourceUnpackedness -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SourceUnpackedness -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SourceUnpackedness -> m SourceUnpackedness gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceUnpackedness -> m SourceUnpackedness gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceUnpackedness -> m SourceUnpackedness | |||||
Bounded SourceUnpackedness | |||||
Defined in GHC.Internal.Generics | |||||
Enum SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods succ :: SourceUnpackedness -> SourceUnpackedness pred :: SourceUnpackedness -> SourceUnpackedness toEnum :: Int -> SourceUnpackedness fromEnum :: SourceUnpackedness -> Int enumFrom :: SourceUnpackedness -> [SourceUnpackedness] enumFromThen :: SourceUnpackedness -> SourceUnpackedness -> [SourceUnpackedness] enumFromTo :: SourceUnpackedness -> SourceUnpackedness -> [SourceUnpackedness] enumFromThenTo :: SourceUnpackedness -> SourceUnpackedness -> SourceUnpackedness -> [SourceUnpackedness] | |||||
Generic SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Associated Types
Methods from :: SourceUnpackedness -> Rep SourceUnpackedness x to :: Rep SourceUnpackedness x -> SourceUnpackedness | |||||
SingKind SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Associated Types
Methods fromSing :: forall (a :: SourceUnpackedness). Sing a -> DemoteRep SourceUnpackedness | |||||
Ix SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods range :: (SourceUnpackedness, SourceUnpackedness) -> [SourceUnpackedness] index :: (SourceUnpackedness, SourceUnpackedness) -> SourceUnpackedness -> Int unsafeIndex :: (SourceUnpackedness, SourceUnpackedness) -> SourceUnpackedness -> Int inRange :: (SourceUnpackedness, SourceUnpackedness) -> SourceUnpackedness -> Bool rangeSize :: (SourceUnpackedness, SourceUnpackedness) -> Int unsafeRangeSize :: (SourceUnpackedness, SourceUnpackedness) -> Int | |||||
Read SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS SourceUnpackedness readList :: ReadS [SourceUnpackedness] readPrec :: ReadPrec SourceUnpackedness readListPrec :: ReadPrec [SourceUnpackedness] | |||||
Show SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods showsPrec :: Int -> SourceUnpackedness -> ShowS show :: SourceUnpackedness -> String showList :: [SourceUnpackedness] -> ShowS | |||||
Eq SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods (==) :: SourceUnpackedness -> SourceUnpackedness -> Bool (/=) :: SourceUnpackedness -> SourceUnpackedness -> Bool | |||||
Ord SourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods compare :: SourceUnpackedness -> SourceUnpackedness -> Ordering (<) :: SourceUnpackedness -> SourceUnpackedness -> Bool (<=) :: SourceUnpackedness -> SourceUnpackedness -> Bool (>) :: SourceUnpackedness -> SourceUnpackedness -> Bool (>=) :: SourceUnpackedness -> SourceUnpackedness -> Bool max :: SourceUnpackedness -> SourceUnpackedness -> SourceUnpackedness min :: SourceUnpackedness -> SourceUnpackedness -> SourceUnpackedness | |||||
SingI 'NoSourceUnpackedness | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'NoSourceUnpackedness | |||||
SingI 'SourceNoUnpack | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'SourceNoUnpack | |||||
SingI 'SourceUnpack | |||||
Defined in GHC.Internal.Generics Methods sing :: Sing 'SourceUnpack | |||||
type Code SourceUnpackedness Source # | |||||
Defined in Generics.SOP.Instances | |||||
type DatatypeInfoOf SourceUnpackedness Source # | |||||
Defined in Generics.SOP.Instances type DatatypeInfoOf SourceUnpackedness = 'ADT "GHC.Internal.Generics" "SourceUnpackedness" '['Constructor "NoSourceUnpackedness", 'Constructor "SourceNoUnpack", 'Constructor "SourceUnpack"] '['[] :: [StrictnessInfo], '[] :: [StrictnessInfo], '[] :: [StrictnessInfo]] | |||||
type DemoteRep SourceUnpackedness | |||||
Defined in GHC.Internal.Generics | |||||
type Rep SourceUnpackedness | |||||
Defined in GHC.Internal.Generics type Rep SourceUnpackedness = D1 ('MetaData "SourceUnpackedness" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "NoSourceUnpackedness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SourceNoUnpack" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SourceUnpack" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
data Sing (a :: SourceUnpackedness) | |||||
Defined in GHC.Internal.Generics data Sing (a :: SourceUnpackedness) where
|