1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
# `text-show`
[][Hackage: text-show]
[](http://packdeps.haskellers.com/reverse/text-show)
[][Haskell.org]
[][tl;dr Legal: BSD3]
[](https://github.com/RyanGlScott/text-show/actions?query=workflow%3AHaskell-CI)
[](https://ci.appveyor.com/project/RyanGlScott/text-show)
[Hackage: text-show]:
http://hackage.haskell.org/package/text-show
"text-show package on Hackage"
[Haskell.org]:
http://www.haskell.org
"The Haskell Programming Language"
[tl;dr Legal: BSD3]:
https://tldrlegal.com/license/bsd-3-clause-license-%28revised%29
"BSD 3-Clause License (Revised)"
`text-show` offers a replacement for the `Show` typeclass intended for use with `Text` instead of `String`s. This package was created in the spirit of [`bytestring-show`](http://hackage.haskell.org/package/bytestring-show).
For most uses, simply importing `TextShow` will suffice:
```haskell
module Main where
import TextShow
main :: IO ()
main = printT (Just "Hello, World!")
```
See also the [naming conventions](https://github.com/RyanGlScott/text-show/wiki/Naming-conventions) page.
Support for automatically deriving `TextShow` instances can be found in the `TextShow.TH` and `TextShow.Generic` modules.
## Scope of the library
`text-show` only provides instances for data types in the following packages:
* [`array`](http://hackage.haskell.org/package/array)
* [`base`](http://hackage.haskell.org/package/base)
* [`bytestring`](http://hackage.haskell.org/package/bytestring)
* [`text`](http://hackage.haskell.org/package/text)
This policy is in place to keep `text-show`'s dependencies reasonably light. If
you need a `TextShow` instance for a library that is not in this list, it may
be covered by the
[`text-show-instances`](https://github.com/RyanGlScott/text-show-instances)
library.
|