generic-deriving-1.14.6: Generic programming library for generalised deriving.
Safe HaskellTrustworthy
LanguageHaskell2010

Generics.Deriving.Enum

Synopsis

Generic enum class

class GEnum a where #

Minimal complete definition

Nothing

Methods

genum :: [a] #

default genum :: (Generic a, Enum' (Rep a)) => [a] #

Instances

Instances details
GEnum All # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [All] #

GEnum Any # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Any] #

GEnum CBool # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CBool] #

GEnum CChar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CChar] #

GEnum CClock # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CClock] #

GEnum CDouble # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CDouble] #

GEnum CFloat # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CFloat] #

GEnum CInt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CInt] #

GEnum CIntMax # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CIntMax] #

GEnum CIntPtr # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CIntPtr] #

GEnum CLLong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CLLong] #

GEnum CLong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CLong] #

GEnum CPtrdiff # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CPtrdiff] #

GEnum CSChar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CSChar] #

GEnum CSUSeconds # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CSUSeconds] #

GEnum CShort # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CShort] #

GEnum CSigAtomic # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CSigAtomic] #

GEnum CSize # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CSize] #

GEnum CTime # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CTime] #

GEnum CUChar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUChar] #

GEnum CUInt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUInt] #

GEnum CUIntMax # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUIntMax] #

GEnum CUIntPtr # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUIntPtr] #

GEnum CULLong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CULLong] #

GEnum CULong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CULong] #

GEnum CUSeconds # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUSeconds] #

GEnum CUShort # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUShort] #

GEnum CWchar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CWchar] #

GEnum IntPtr # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [IntPtr] #

GEnum WordPtr # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [WordPtr] #

GEnum Associativity # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Associativity] #

GEnum Fixity # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Fixity] #

GEnum ExitCode # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [ExitCode] #

GEnum Int16 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Int16] #

GEnum Int32 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Int32] #

GEnum Int64 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Int64] #

GEnum Int8 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Int8] #

GEnum CBlkCnt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CBlkCnt] #

GEnum CBlkSize # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CBlkSize] #

GEnum CCc # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CCc] #

GEnum CClockId # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CClockId] #

GEnum CDev # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CDev] #

GEnum CFsBlkCnt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CFsBlkCnt] #

GEnum CFsFilCnt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CFsFilCnt] #

GEnum CGid # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CGid] #

GEnum CId # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CId] #

GEnum CIno # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CIno] #

GEnum CKey # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CKey] #

GEnum CMode # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CMode] #

GEnum CNlink # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CNlink] #

GEnum COff # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [COff] #

GEnum CPid # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CPid] #

GEnum CRLim # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CRLim] #

GEnum CSpeed # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CSpeed] #

GEnum CSsize # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CSsize] #

GEnum CTcflag # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CTcflag] #

GEnum CUid # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [CUid] #

GEnum Fd # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Fd] #

GEnum Word16 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Word16] #

GEnum Word32 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Word32] #

GEnum Word64 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Word64] #

GEnum Word8 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Word8] #

GEnum Ordering # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Ordering] #

GEnum Integer # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Integer] #

GEnum Natural # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Natural] #

GEnum () # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [()] #

GEnum Bool # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Bool] #

GEnum Double # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Double] #

GEnum Float # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Float] #

GEnum Int # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Int] #

GEnum Word # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Word] #

GEnum a => GEnum (Complex a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Complex a] #

GEnum a => GEnum (First a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [First a] #

GEnum a => GEnum (Last a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Last a] #

GEnum a => GEnum (Max a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Max a] #

GEnum a => GEnum (Min a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Min a] #

GEnum m => GEnum (WrappedMonoid m) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [WrappedMonoid m] #

(Generic a, GEq a, Enum' (Rep a)) => GEnum (Default a) #

The Enum class in base is slightly different; it comprises toEnum and fromEnum. Generics.Deriving.Enum provides functions toEnumDefault and fromEnumDefault.

Instance details

Defined in Generics.Deriving.Default

Methods

genum :: [Default a] #

GEnum a => GEnum (NonEmpty a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [NonEmpty a] #

GEnum a => GEnum (Identity a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Identity a] #

GEnum a => GEnum (First a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [First a] #

GEnum a => GEnum (Last a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Last a] #

GEnum a => GEnum (Dual a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Dual a] #

GEnum a => GEnum (Product a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Product a] #

GEnum a => GEnum (Sum a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Sum a] #

GEnum a => GEnum (ZipList a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [ZipList a] #

GEnum p => GEnum (Par1 p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Par1 p] #

GEnum a => GEnum (Maybe a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Maybe a] #

GEnum a => GEnum [a] # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [[a]] #

(GEnum a, GEnum b) => GEnum (Arg a b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Arg a b] #

(GEnum a, GEnum b) => GEnum (Either a b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Either a b] #

GEnum (Proxy s) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Proxy s] #

GEnum (U1 p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [U1 p] #

(GEnum a, GEnum b) => GEnum (a, b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(a, b)] #

GEnum a => GEnum (Const a b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Const a b] #

GEnum (f a) => GEnum (Alt f a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Alt f a] #

GEnum (f p) => GEnum (Rec1 f p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [Rec1 f p] #

(GEnum a, GEnum b, GEnum c) => GEnum (a, b, c) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(a, b, c)] #

(GEnum (f p), GEnum (g p)) => GEnum ((f :*: g) p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(f :*: g) p] #

(GEnum (f p), GEnum (g p)) => GEnum ((f :+: g) p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(f :+: g) p] #

GEnum c => GEnum (K1 i c p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [K1 i c p] #

(GEnum a, GEnum b, GEnum c, GEnum d) => GEnum (a, b, c, d) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(a, b, c, d)] #

GEnum (f (g p)) => GEnum ((f :.: g) p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(f :.: g) p] #

GEnum (f p) => GEnum (M1 i c f p) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [M1 i c f p] #

(GEnum a, GEnum b, GEnum c, GEnum d, GEnum e) => GEnum (a, b, c, d, e) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(a, b, c, d, e)] #

(GEnum a, GEnum b, GEnum c, GEnum d, GEnum e, GEnum f) => GEnum (a, b, c, d, e, f) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(a, b, c, d, e, f)] #

(GEnum a, GEnum b, GEnum c, GEnum d, GEnum e, GEnum f, GEnum g) => GEnum (a, b, c, d, e, f, g) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

genum :: [(a, b, c, d, e, f, g)] #

Default definitions for GEnum

genumDefault :: (Generic a, Enum' (Rep a)) => [a] #

toEnumDefault :: (Generic a, Enum' (Rep a)) => Int -> a #

fromEnumDefault :: (GEq a, Generic a, Enum' (Rep a)) => a -> Int #

Internal enum class

class Enum' (f :: k -> Type) where #

Methods

enum' :: forall (a :: k). [f a] #

Instances

Instances details
Enum' (U1 :: k -> Type) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

enum' :: forall (a :: k). [U1 a] #

(Enum' f, Enum' g) => Enum' (f :*: g :: k -> Type) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

enum' :: forall (a :: k). [(f :*: g) a] #

(Enum' f, Enum' g) => Enum' (f :+: g :: k -> Type) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

enum' :: forall (a :: k). [(f :+: g) a] #

GEnum c => Enum' (K1 i c :: k -> Type) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

enum' :: forall (a :: k). [K1 i c a] #

Enum' f => Enum' (M1 i c f :: k -> Type) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

enum' :: forall (a :: k). [M1 i c f a] #

Generic Ix class

class Ord a => GIx a where #

Minimal complete definition

Nothing

Methods

range :: (a, a) -> [a] #

The list of values in the subrange defined by a bounding pair.

default range :: (GEq a, Generic a, Enum' (Rep a)) => (a, a) -> [a] #

index :: (a, a) -> a -> Int #

The position of a subscript in the subrange.

default index :: (GEq a, Generic a, Enum' (Rep a)) => (a, a) -> a -> Int #

inRange :: (a, a) -> a -> Bool #

Returns True the given subscript lies in the range defined the bounding pair.

default inRange :: (GEq a, Generic a, Enum' (Rep a)) => (a, a) -> a -> Bool #

Instances

Instances details
GIx All # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (All, All) -> [All] #

index :: (All, All) -> All -> Int #

inRange :: (All, All) -> All -> Bool #

GIx Any # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Any, Any) -> [Any] #

index :: (Any, Any) -> Any -> Int #

inRange :: (Any, Any) -> Any -> Bool #

GIx CBool # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CBool, CBool) -> [CBool] #

index :: (CBool, CBool) -> CBool -> Int #

inRange :: (CBool, CBool) -> CBool -> Bool #

GIx CChar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CChar, CChar) -> [CChar] #

index :: (CChar, CChar) -> CChar -> Int #

inRange :: (CChar, CChar) -> CChar -> Bool #

GIx CInt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CInt, CInt) -> [CInt] #

index :: (CInt, CInt) -> CInt -> Int #

inRange :: (CInt, CInt) -> CInt -> Bool #

GIx CIntMax # 
Instance details

Defined in Generics.Deriving.Enum

GIx CIntPtr # 
Instance details

Defined in Generics.Deriving.Enum

GIx CLLong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CLLong, CLLong) -> [CLLong] #

index :: (CLLong, CLLong) -> CLLong -> Int #

inRange :: (CLLong, CLLong) -> CLLong -> Bool #

GIx CLong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CLong, CLong) -> [CLong] #

index :: (CLong, CLong) -> CLong -> Int #

inRange :: (CLong, CLong) -> CLong -> Bool #

GIx CPtrdiff # 
Instance details

Defined in Generics.Deriving.Enum

GIx CSChar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CSChar, CSChar) -> [CSChar] #

index :: (CSChar, CSChar) -> CSChar -> Int #

inRange :: (CSChar, CSChar) -> CSChar -> Bool #

GIx CShort # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CShort, CShort) -> [CShort] #

index :: (CShort, CShort) -> CShort -> Int #

inRange :: (CShort, CShort) -> CShort -> Bool #

GIx CSigAtomic # 
Instance details

Defined in Generics.Deriving.Enum

GIx CSize # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CSize, CSize) -> [CSize] #

index :: (CSize, CSize) -> CSize -> Int #

inRange :: (CSize, CSize) -> CSize -> Bool #

GIx CUChar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CUChar, CUChar) -> [CUChar] #

index :: (CUChar, CUChar) -> CUChar -> Int #

inRange :: (CUChar, CUChar) -> CUChar -> Bool #

GIx CUInt # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CUInt, CUInt) -> [CUInt] #

index :: (CUInt, CUInt) -> CUInt -> Int #

inRange :: (CUInt, CUInt) -> CUInt -> Bool #

GIx CUIntMax # 
Instance details

Defined in Generics.Deriving.Enum

GIx CUIntPtr # 
Instance details

Defined in Generics.Deriving.Enum

GIx CULLong # 
Instance details

Defined in Generics.Deriving.Enum

GIx CULong # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CULong, CULong) -> [CULong] #

index :: (CULong, CULong) -> CULong -> Int #

inRange :: (CULong, CULong) -> CULong -> Bool #

GIx CUShort # 
Instance details

Defined in Generics.Deriving.Enum

GIx CWchar # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CWchar, CWchar) -> [CWchar] #

index :: (CWchar, CWchar) -> CWchar -> Int #

inRange :: (CWchar, CWchar) -> CWchar -> Bool #

GIx IntPtr # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (IntPtr, IntPtr) -> [IntPtr] #

index :: (IntPtr, IntPtr) -> IntPtr -> Int #

inRange :: (IntPtr, IntPtr) -> IntPtr -> Bool #

GIx WordPtr # 
Instance details

Defined in Generics.Deriving.Enum

GIx Associativity # 
Instance details

Defined in Generics.Deriving.Enum

GIx Fixity # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Fixity, Fixity) -> [Fixity] #

index :: (Fixity, Fixity) -> Fixity -> Int #

inRange :: (Fixity, Fixity) -> Fixity -> Bool #

GIx ExitCode # 
Instance details

Defined in Generics.Deriving.Enum

GIx Int16 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Int16, Int16) -> [Int16] #

index :: (Int16, Int16) -> Int16 -> Int #

inRange :: (Int16, Int16) -> Int16 -> Bool #

GIx Int32 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Int32, Int32) -> [Int32] #

index :: (Int32, Int32) -> Int32 -> Int #

inRange :: (Int32, Int32) -> Int32 -> Bool #

GIx Int64 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Int64, Int64) -> [Int64] #

index :: (Int64, Int64) -> Int64 -> Int #

inRange :: (Int64, Int64) -> Int64 -> Bool #

GIx Int8 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Int8, Int8) -> [Int8] #

index :: (Int8, Int8) -> Int8 -> Int #

inRange :: (Int8, Int8) -> Int8 -> Bool #

GIx CBlkCnt # 
Instance details

Defined in Generics.Deriving.Enum

GIx CBlkSize # 
Instance details

Defined in Generics.Deriving.Enum

GIx CClockId # 
Instance details

Defined in Generics.Deriving.Enum

GIx CFsBlkCnt # 
Instance details

Defined in Generics.Deriving.Enum

GIx CFsFilCnt # 
Instance details

Defined in Generics.Deriving.Enum

GIx CGid # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CGid, CGid) -> [CGid] #

index :: (CGid, CGid) -> CGid -> Int #

inRange :: (CGid, CGid) -> CGid -> Bool #

GIx CId # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CId, CId) -> [CId] #

index :: (CId, CId) -> CId -> Int #

inRange :: (CId, CId) -> CId -> Bool #

GIx CIno # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CIno, CIno) -> [CIno] #

index :: (CIno, CIno) -> CIno -> Int #

inRange :: (CIno, CIno) -> CIno -> Bool #

GIx CKey # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CKey, CKey) -> [CKey] #

index :: (CKey, CKey) -> CKey -> Int #

inRange :: (CKey, CKey) -> CKey -> Bool #

GIx CMode # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CMode, CMode) -> [CMode] #

index :: (CMode, CMode) -> CMode -> Int #

inRange :: (CMode, CMode) -> CMode -> Bool #

GIx CNlink # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CNlink, CNlink) -> [CNlink] #

index :: (CNlink, CNlink) -> CNlink -> Int #

inRange :: (CNlink, CNlink) -> CNlink -> Bool #

GIx COff # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (COff, COff) -> [COff] #

index :: (COff, COff) -> COff -> Int #

inRange :: (COff, COff) -> COff -> Bool #

GIx CPid # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CPid, CPid) -> [CPid] #

index :: (CPid, CPid) -> CPid -> Int #

inRange :: (CPid, CPid) -> CPid -> Bool #

GIx CRLim # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CRLim, CRLim) -> [CRLim] #

index :: (CRLim, CRLim) -> CRLim -> Int #

inRange :: (CRLim, CRLim) -> CRLim -> Bool #

GIx CSsize # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CSsize, CSsize) -> [CSsize] #

index :: (CSsize, CSsize) -> CSsize -> Int #

inRange :: (CSsize, CSsize) -> CSsize -> Bool #

GIx CTcflag # 
Instance details

Defined in Generics.Deriving.Enum

GIx CUid # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (CUid, CUid) -> [CUid] #

index :: (CUid, CUid) -> CUid -> Int #

inRange :: (CUid, CUid) -> CUid -> Bool #

GIx Fd # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Fd, Fd) -> [Fd] #

index :: (Fd, Fd) -> Fd -> Int #

inRange :: (Fd, Fd) -> Fd -> Bool #

GIx Word16 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Word16, Word16) -> [Word16] #

index :: (Word16, Word16) -> Word16 -> Int #

inRange :: (Word16, Word16) -> Word16 -> Bool #

GIx Word32 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Word32, Word32) -> [Word32] #

index :: (Word32, Word32) -> Word32 -> Int #

inRange :: (Word32, Word32) -> Word32 -> Bool #

GIx Word64 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Word64, Word64) -> [Word64] #

index :: (Word64, Word64) -> Word64 -> Int #

inRange :: (Word64, Word64) -> Word64 -> Bool #

GIx Word8 # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Word8, Word8) -> [Word8] #

index :: (Word8, Word8) -> Word8 -> Int #

inRange :: (Word8, Word8) -> Word8 -> Bool #

GIx Ordering # 
Instance details

Defined in Generics.Deriving.Enum

GIx Integer # 
Instance details

Defined in Generics.Deriving.Enum

GIx Natural # 
Instance details

Defined in Generics.Deriving.Enum

GIx () # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((), ()) -> [()] #

index :: ((), ()) -> () -> Int #

inRange :: ((), ()) -> () -> Bool #

GIx Bool # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Bool, Bool) -> [Bool] #

index :: (Bool, Bool) -> Bool -> Int #

inRange :: (Bool, Bool) -> Bool -> Bool #

GIx Int # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Int, Int) -> [Int] #

index :: (Int, Int) -> Int -> Int #

inRange :: (Int, Int) -> Int -> Bool #

GIx Word # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Word, Word) -> [Word] #

index :: (Word, Word) -> Word -> Int #

inRange :: (Word, Word) -> Word -> Bool #

(GEq a, GEnum a, GIx a) => GIx (First a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (First a, First a) -> [First a] #

index :: (First a, First a) -> First a -> Int #

inRange :: (First a, First a) -> First a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Last a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Last a, Last a) -> [Last a] #

index :: (Last a, Last a) -> Last a -> Int #

inRange :: (Last a, Last a) -> Last a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Max a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Max a, Max a) -> [Max a] #

index :: (Max a, Max a) -> Max a -> Int #

inRange :: (Max a, Max a) -> Max a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Min a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Min a, Min a) -> [Min a] #

index :: (Min a, Min a) -> Min a -> Int #

inRange :: (Min a, Min a) -> Min a -> Bool #

(GEq m, GEnum m, GIx m) => GIx (WrappedMonoid m) # 
Instance details

Defined in Generics.Deriving.Enum

(GEq a, GEnum a, GIx a) => GIx (NonEmpty a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (NonEmpty a, NonEmpty a) -> [NonEmpty a] #

index :: (NonEmpty a, NonEmpty a) -> NonEmpty a -> Int #

inRange :: (NonEmpty a, NonEmpty a) -> NonEmpty a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Identity a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Identity a, Identity a) -> [Identity a] #

index :: (Identity a, Identity a) -> Identity a -> Int #

inRange :: (Identity a, Identity a) -> Identity a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (First a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (First a, First a) -> [First a] #

index :: (First a, First a) -> First a -> Int #

inRange :: (First a, First a) -> First a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Last a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Last a, Last a) -> [Last a] #

index :: (Last a, Last a) -> Last a -> Int #

inRange :: (Last a, Last a) -> Last a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Dual a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Dual a, Dual a) -> [Dual a] #

index :: (Dual a, Dual a) -> Dual a -> Int #

inRange :: (Dual a, Dual a) -> Dual a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Product a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Product a, Product a) -> [Product a] #

index :: (Product a, Product a) -> Product a -> Int #

inRange :: (Product a, Product a) -> Product a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Sum a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Sum a, Sum a) -> [Sum a] #

index :: (Sum a, Sum a) -> Sum a -> Int #

inRange :: (Sum a, Sum a) -> Sum a -> Bool #

(GEq a, GEnum a, GIx a) => GIx (Maybe a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Maybe a, Maybe a) -> [Maybe a] #

index :: (Maybe a, Maybe a) -> Maybe a -> Int #

inRange :: (Maybe a, Maybe a) -> Maybe a -> Bool #

(GEq a, GEnum a, GIx a) => GIx [a] # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ([a], [a]) -> [[a]] #

index :: ([a], [a]) -> [a] -> Int #

inRange :: ([a], [a]) -> [a] -> Bool #

(GEq a, GEnum a, GIx a, GEnum b) => GIx (Arg a b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Arg a b, Arg a b) -> [Arg a b] #

index :: (Arg a b, Arg a b) -> Arg a b -> Int #

inRange :: (Arg a b, Arg a b) -> Arg a b -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b) => GIx (Either a b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Either a b, Either a b) -> [Either a b] #

index :: (Either a b, Either a b) -> Either a b -> Int #

inRange :: (Either a b, Either a b) -> Either a b -> Bool #

GIx (Proxy s) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Proxy s, Proxy s) -> [Proxy s] #

index :: (Proxy s, Proxy s) -> Proxy s -> Int #

inRange :: (Proxy s, Proxy s) -> Proxy s -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b) => GIx (a, b) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((a, b), (a, b)) -> [(a, b)] #

index :: ((a, b), (a, b)) -> (a, b) -> Int #

inRange :: ((a, b), (a, b)) -> (a, b) -> Bool #

(GEq (f a), GEnum (f a), GIx (f a)) => GIx (Alt f a) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: (Alt f a, Alt f a) -> [Alt f a] #

index :: (Alt f a, Alt f a) -> Alt f a -> Int #

inRange :: (Alt f a, Alt f a) -> Alt f a -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b, GEq c, GEnum c, GIx c) => GIx (a, b, c) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((a, b, c), (a, b, c)) -> [(a, b, c)] #

index :: ((a, b, c), (a, b, c)) -> (a, b, c) -> Int #

inRange :: ((a, b, c), (a, b, c)) -> (a, b, c) -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b, GEq c, GEnum c, GIx c, GEq d, GEnum d, GIx d) => GIx (a, b, c, d) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((a, b, c, d), (a, b, c, d)) -> [(a, b, c, d)] #

index :: ((a, b, c, d), (a, b, c, d)) -> (a, b, c, d) -> Int #

inRange :: ((a, b, c, d), (a, b, c, d)) -> (a, b, c, d) -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b, GEq c, GEnum c, GIx c, GEq d, GEnum d, GIx d, GEq e, GEnum e, GIx e) => GIx (a, b, c, d, e) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((a, b, c, d, e), (a, b, c, d, e)) -> [(a, b, c, d, e)] #

index :: ((a, b, c, d, e), (a, b, c, d, e)) -> (a, b, c, d, e) -> Int #

inRange :: ((a, b, c, d, e), (a, b, c, d, e)) -> (a, b, c, d, e) -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b, GEq c, GEnum c, GIx c, GEq d, GEnum d, GIx d, GEq e, GEnum e, GIx e, GEq f, GEnum f, GIx f) => GIx (a, b, c, d, e, f) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((a, b, c, d, e, f), (a, b, c, d, e, f)) -> [(a, b, c, d, e, f)] #

index :: ((a, b, c, d, e, f), (a, b, c, d, e, f)) -> (a, b, c, d, e, f) -> Int #

inRange :: ((a, b, c, d, e, f), (a, b, c, d, e, f)) -> (a, b, c, d, e, f) -> Bool #

(GEq a, GEnum a, GIx a, GEq b, GEnum b, GIx b, GEq c, GEnum c, GIx c, GEq d, GEnum d, GIx d, GEq e, GEnum e, GIx e, GEq f, GEnum f, GIx f, GEq g, GEnum g, GIx g) => GIx (a, b, c, d, e, f, g) # 
Instance details

Defined in Generics.Deriving.Enum

Methods

range :: ((a, b, c, d, e, f, g), (a, b, c, d, e, f, g)) -> [(a, b, c, d, e, f, g)] #

index :: ((a, b, c, d, e, f, g), (a, b, c, d, e, f, g)) -> (a, b, c, d, e, f, g) -> Int #

inRange :: ((a, b, c, d, e, f, g), (a, b, c, d, e, f, g)) -> (a, b, c, d, e, f, g) -> Bool #

Default definitions for GIx

rangeDefault :: (GEq a, Generic a, Enum' (Rep a)) => (a, a) -> [a] #

indexDefault :: (GEq a, Generic a, Enum' (Rep a)) => (a, a) -> a -> Int #

inRangeDefault :: (GEq a, Generic a, Enum' (Rep a)) => (a, a) -> a -> Bool #