Safe Haskell | None |
---|---|
Language | Haskell2010 |
Data.Digit
Contents
Description
A data type with ten nullary constructors [0-9] and combinators.
- data Digit
- foldDigit :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Digit -> a
- class D0 d where
- x0 :: D0 d => d
- class D1 d where
- x1 :: D1 d => d
- class D2 d where
- x2 :: D2 d => d
- class D3 d where
- x3 :: D3 d => d
- class D4 d where
- x4 :: D4 d => d
- class D5 d where
- x5 :: D5 d => d
- class D6 d where
- x6 :: D6 d => d
- class D7 d where
- x7 :: D7 d => d
- class D8 d where
- x8 :: D8 d => d
- class D9 d where
- x9 :: D9 d => d
- digit :: Prism' Int Digit
- digitC :: Prism' Char Digit
- digitQ :: QuasiQuoter
Data type
A data type with ten nullary constructors.
Instances
Bounded Digit Source # | |
Enum Digit Source # | |
Eq Digit Source # | |
Data Digit Source # | |
Ord Digit Source # | |
Read Digit Source # | |
Show Digit Source # | |
D9 Digit Source # | |
D8 Digit Source # | |
D7 Digit Source # | |
D6 Digit Source # | |
D5 Digit Source # | |
D4 Digit Source # | |
D3 Digit Source # | |
D2 Digit Source # | |
D1 Digit Source # | |
D0 Digit Source # | |
Destructors
Arguments
:: a | Zero. |
-> a | One. |
-> a | Two. |
-> a | Three. |
-> a | Four. |
-> a | Five. |
-> a | Six. |
-> a | Seven. |
-> a | Eight. |
-> a | Nine. |
-> Digit | The digit to fold. |
-> a |
Catamorphism for Digit
.
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d0 == x0
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d1 == x1
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d2 == x2
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d3 == x3
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d4 == x4
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d5 == x5
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d6 == x6
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d7 == x7
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d8 == x8
foldDigit x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 d9 == x9
Prisms
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
Minimal complete definition
digit :: Prism' Int Digit Source #
A prism for using Int
as Digit
.
>>>
5 ^? digit
Just 5
>>>
0 ^? digit
Just 0
>>>
9 ^? digit
Just 9
>>>
10 ^? digit
Nothing
>>>
(-5) ^? digit
Nothing
digitC :: Prism' Char Digit Source #
A prism for using Char
as Digit
.
>>>
'5' ^? digitC
Just 5
>>>
'0' ^? digitC
Just 0
>>>
'9' ^? digitC
Just 9
>>>
'a' ^? digitC
Nothing
>>>
'@' ^? digitC
Nothing
digitQ :: QuasiQuoter Source #
A QuasiQuoter for any range of Digit
.
- digitQ|4|
- :: Digit 4
named [digitQ|4|] = "four" named [digitQ|$x|] = "not four, " ++ show x ++ " instead"
mod10D x = let y = mod x 10 in [digitQ|$y|]