taiwan-id
Safe HaskellNone
LanguageHaskell2010

Taiwan.ID.Digit1289

Synopsis

Documentation

data Digit1289 Source #

Represents a single decimal digit from the set {1, 2, 8, 9}.

Constructors

D1289_1 
D1289_2 
D1289_8 
D1289_9 

Instances

Instances details
Finitary Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Associated Types

type Cardinality Digit1289 
Instance details

Defined in Taiwan.ID.Digit1289

type Cardinality Digit1289 = GCardinality (Rep Digit1289)
Eq Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Ord Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Bounded Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Enum Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Generic Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Associated Types

type Rep Digit1289 
Instance details

Defined in Taiwan.ID.Digit1289

type Rep Digit1289 = D1 ('MetaData "Digit1289" "Taiwan.ID.Digit1289" "taiwan-id-0.1.1.4-inplace" 'False) ((C1 ('MetaCons "D1289_1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "D1289_2" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "D1289_8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "D1289_9" 'PrefixI 'False) (U1 :: Type -> Type)))
Read Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

Show Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

type Cardinality Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

type Cardinality Digit1289 = GCardinality (Rep Digit1289)
type Rep Digit1289 Source # 
Instance details

Defined in Taiwan.ID.Digit1289

type Rep Digit1289 = D1 ('MetaData "Digit1289" "Taiwan.ID.Digit1289" "taiwan-id-0.1.1.4-inplace" 'False) ((C1 ('MetaCons "D1289_1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "D1289_2" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "D1289_8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "D1289_9" 'PrefixI 'False) (U1 :: Type -> Type)))

fromChar :: Char -> Maybe Digit1289 Source #

Attempts to parse a Digit1289 from a character.

Only the characters '1', '2', '8', and '9' are accepted.

toChar :: Digit1289 -> Char Source #

Converts a Digit1289 to a decimal digit character.

toDigit :: Digit1289 -> Digit Source #

Converts a Digit1289 to an ordinary Digit.

generate :: MonadRandom m => m Digit1289 Source #

Generates a random Digit1289.

type family FromChar (c :: Char) :: Maybe Digit1289 where ... Source #

Equations

FromChar '1' = 'Just 'D1289_1 
FromChar '2' = 'Just 'D1289_2 
FromChar '8' = 'Just 'D1289_8 
FromChar '9' = 'Just 'D1289_9 
FromChar _1 = 'Nothing :: Maybe Digit1289 

type family FromNat (n :: Nat) :: Maybe Digit1289 where ... Source #

type family ToNat (d :: Digit1289) :: Nat where ... Source #

Equations

ToNat 'D1289_1 = 1 
ToNat 'D1289_2 = 2 
ToNat 'D1289_8 = 8 
ToNat 'D1289_9 = 9