d10
Version 0.1.0.0 revision 0 uploaded by chris_martin.
Package meta
- Synopsis
- Digits 0-9
- Description
Data types representing the digits zero through nine.
Modules
Each of the following modules defines a different type named
D10
, all of which are different representations of the same concept:Data.D10.Char - Defines a
D10
type as a newtype forChar
, where the values are restricted to characters between'0'
and'9'
.Data.D10.Num - Defines a
D10
type as a newtype for any type with an instance of theNum
class, where the values are restricted to numbers betweenfromInteger 0
andfromInteger 9
.Data.D10.Safe - Defines a
D10
type asD0 | D1 | D2 | ... | D9
.
Other modules:
Data.D10.Predicate - Functions to test whether values of various types represent digits in the range 0 to 9.
Quasi-quoters
Each module that defines a
D10
type also defines quasi-quoters for it. With theQuasiQuotes
GHC extension enabled, a single digit like 7 can be written as[d10|7|]
, and a list of digits like [4,5,6] can be written as[d10|456|]
. For Data.D10.Char and Data.D10.Num, the quasi-quoters are an important feature, because theD10
types defined in these modules have unsafe constructors, and the quasi-quoters provide compile-time assurance that we never construct aD10
that represents a value outside the range 0 to 9. For Data.D10.Safe, the quasi-quoter is offered merely as a possible convenience, allowing you to write[d10|456789|]
in place of the somewhat longer expression[D4,D5,D6,D7,D8,D9]
.- Author
- Chris Martin
- Bug reports
- https://github.com/typeclasses/d10/issues
- Category
- Data
- Copyright
- 2018 Typeclass Consulting, LLC
- Homepage
- https://github.com/typeclasses/d10
- Maintainer
- Chris Martin, Julie Moronuki
- Package URL
- n/a
- Stability
- n/a