Text is:module

String I/O functions The API of this module is unstable and not meant to be consumed by the general public. If you absolutely must depend on it, make sure to use a tight upper bound, e.g., base < 4.X rather than base < 5, because the interface can change rapidly without much warning.
A time and space-efficient implementation of Unicode text. Suitable for performance critical use, both in terms of large data quantities and high speed. Note: Read below the synopsis for important notes on the use of this module. This module is intended to be imported qualified, to avoid name clashes with Prelude functions, e.g.
import qualified Data.Text as T
To use an extended and very rich family of functions for working with Unicode text (including normalization, regular expressions, non-standard encodings, text breaking, and locales), see the text-icu package.
Parser from strict Text to Tokens.
Most frequently, you'll probably want to encode straight to UTF-8 (the standard JSON encoding) using encode. You can use the conversions to Builders when embedding JSON messages as parts of a protocol.
Text-based test controller for running HUnit tests and reporting results as text, usually to a terminal.
Convenience definitions for working with Text.
Simple, efficient combinator parsing for Text strings, loosely based on the Parsec library.
"Scrap your boilerplate" --- Generic programming in Haskell See http://www.cs.uu.nl/wiki/GenericProgramming/SYB. The present module provides generic operations for text serialisation of terms.
Convenience alias for Data.Generics.Text.
A module to represent text with very basic formatting. Values are of type [Text] and shown with showText. As an example of the formatting:
[Line "Cooking for hungry people."
,Line "Welcome to my cookery recipe program, I sure hope you enjoy using it!"
,Line ""
,Cols ["Omlette","  A tasty eggy treat."]
,Cols ["  -m"," --mushrooms","  Some mushrooms, or in fact any other ingredients you have in the cupboards"]
,Cols ["  -e"," --eggs", "  But always you need eggs"]
,Line ""
,Cols ["Spagetti Bolognaise", "  An Italian delight."]
,Cols ["  -s"," --spagetti","  The first word in the name"]
,Cols ["  -b"," --bolognaise","  The second word in the name"]
,Cols ["  -d"," --dolmio","  The magic ingredient!"]
,Line ""
,Line "    The author of this program explicitly disclaims any liability for poisoning people who get their recipes off the internet."]
With putStrLn (showText (Wrap 50) demo) gives:
Cooking for hungry people.
Welcome to my cookery recipe program, I sure hope
you enjoy using it!

Omlette              A tasty eggy treat.
-m --mushrooms   Some mushrooms, or in fact
any other ingredients you have
in the cupboards
-e --eggs        But always you need eggs

Spagetti Bolognaise  An Italian delight.
-s --spagetti    The first word in the name
-b --bolognaise  The second word in the name
-d --dolmio      The magic ingredient!

The author of this program explicitly
disclaims any liability for poisoning people
who get their recipes off the internet.
Deprecated: Use Prettyprinter.Render.Text instead.
Render an unannotated SimpleDocStream as plain Text.
NOTE It is recommended to start using Data.Conduit.Combinators instead of this module. Copyright: 2011 Michael Snoyman, 2010-2011 John Millikin License: MIT Handle streams of text. Parts of this code were taken from enumerator and adapted for conduits. For many purposes, it's recommended to use the conduit-combinators library, which provides a more complete set of functions.
This modules provides RegexMaker and RegexLike instances for using Text with the TDFA backend (Text.Regex.TDFA.NewDFA.Engine and Text.Regex.TDFA.NewDFA.Tester). This exports instances of the high level API and the medium level API of compile,execute, and regexec.
A renderer that produces a lazy Text value, using the Text Builder.
Folds for text streams
A Shakespearean module for general text processing, introducing type-safe, compile-time variable interpolation. Text templates use the same parser as for other shakespearean templates which enables variable interpolation using #{..}. The parser also recognize the @{..} and ^{..} syntax. If it is necessary that your template produces the output containing one of the interpolation syntax you can escape the sequence using a backslash:
λ> :set -XQuasiQuotes
λ> let bar = 23 :: Int in [st|#{bar}|] :: Text
produces "23", but
λ> let bar = 23 :: Int in [st|#\{bar}|] :: Text
returns "#{bar}". The escaping backslash is removed from the output. Further reading: Shakespearean templates: https://www.yesodweb.com/book/shakespearean-templates
This module provides support for parsing values from Text InputStreams using attoparsec. Since: 1.4.0.0.
Stream primitives for decoding and encoding Text values in UTF-8 format.
Very basic text primitives along with associated attributes.
Strict Text. Import as:
import qualified RIO.Text as T
This module does not export any partial functions. For those, see RIO.Text.Partial
Provides a stream-based approach to decoding Unicode data. Each function below works the same way: you give it a chunk of data, and it gives back a DecodeResult. If the parse was a success, then you get a chunk of Text (possibly empty) and a continuation parsing function. If the parse was a failure, you get a chunk of successfully decoded Text (possibly empty) and the unconsumed bytes. In order to indicate end of stream, you pass an empty ByteString to the decode function. This call may result in a failure, if there were unused bytes left over from a previous step which formed part of a code sequence.
Text instances for Convertible. Copyright (C) 2011 MailRank, Inc. bos@mailrank.com All rights reserved. For license and copyright information, see the file COPYRIGHT These instances perform conversion between text-like types such as Text, ByteString, and the like. The instances do not include conversions between ByteString and Text or String, since such conversions cannot safely be performed without knowing the encoding of the ByteString.