Safe Haskell | None |
---|---|
Language | Haskell2010 |
Provides types for abstracting over formatters.
Since: 0.1
Synopsis
- class Formatter a where
- data IntegralFormatter = MkIntegralFormatter
- newtype FloatingFormatter = MkFloatingFormatter (Maybe Word8)
- type family BaseFormatter a
- formatBase :: (BaseFormatter a ~ f, Formatter f, PrintfArg a) => f -> a -> Text
- data CaseFormat
- _CaseFormatLower :: Prism' CaseFormat ()
- _CaseFormatTitle :: Prism' CaseFormat ()
- _CaseFormatUpper :: Prism' CaseFormat ()
- caseFormatToFn :: CaseFormat -> Text -> Text
Abstracting over formatters
class Formatter a where Source #
Maps the formatter to its format string.
Since: 0.1
Instances
Formatter FloatingFormatter Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Base formatStr :: FloatingFormatter -> Text Source # | |
Formatter IntegralFormatter Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Base formatStr :: IntegralFormatter -> Text Source # | |
Formatter DirectedFormatter Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Direction formatStr :: DirectedFormatter -> Text Source # | |
Formatter SizedFormatter Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Size formatStr :: SizedFormatter -> Text Source # |
data IntegralFormatter Source #
Formatter for integral types.
Since: 0.1
Instances
Formatter IntegralFormatter Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Base formatStr :: IntegralFormatter -> Text Source # |
newtype FloatingFormatter Source #
Formatter for floating types. Takes an optional param for rounding digits.
Since: 0.1
Instances
Formatter FloatingFormatter Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Base formatStr :: FloatingFormatter -> Text Source # |
type family BaseFormatter a Source #
Relates a "base" value with its given formatter. This is used to enforce
type-safe formatting e.g. floating types can only be used with
FloatingFormatter
.
Since: 0.1
Instances
formatBase :: (BaseFormatter a ~ f, Formatter f, PrintfArg a) => f -> a -> Text Source #
Formats a value to a string. BaseFormatter
is used to enforce
type-safety.
Since: 0.1
Common formatting types
data CaseFormat Source #
Case formatting.
Since: 0.1
CaseFormatLower | Since: 0.1 |
CaseFormatTitle | Since: 0.1 |
CaseFormatUpper | Since: 0.1 |
Instances
Show CaseFormat Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Base showsPrec :: Int -> CaseFormat -> ShowS # show :: CaseFormat -> String # showList :: [CaseFormat] -> ShowS # | |
Eq CaseFormat Source # | Since: 0.1 |
Defined in Data.Bytes.Formatting.Base (==) :: CaseFormat -> CaseFormat -> Bool # (/=) :: CaseFormat -> CaseFormat -> Bool # |
_CaseFormatLower :: Prism' CaseFormat () Source #
Since: 0.1
_CaseFormatTitle :: Prism' CaseFormat () Source #
Since: 0.1
_CaseFormatUpper :: Prism' CaseFormat () Source #
Since: 0.1
caseFormatToFn :: CaseFormat -> Text -> Text Source #
Since: 0.1