W3cubDocs

/Haskell 9

Data.Text.Internal.Lazy

Copyright (c) 2009 2010 Bryan O'Sullivan
License BSD-style
Maintainer [email protected]
Stability experimental
Portability GHC
Safe Haskell None
Language Haskell2010

Description

Warning: this is an internal module, and does not have a stable API or name. Functions in this module may not check or enforce preconditions expected by public modules. Use at your own risk!

A module containing private Text internals. This exposes the Text representation and low level construction functions. Modules which extend the Text system may need to use this module.

data Text Source

Constructors

Empty

Empty text.

Since: text-2.1.2

Chunk !Text Text

Chunks must be non-empty, this invariant is not checked.

Instances
Instances details
PrintfArg Text Source

Since: text-1.2.2.0

Instance details

Defined in Data.Text.Lazy

Binary Text Source

Since: text-1.2.1.0

Instance details

Defined in Data.Text.Lazy

Methods

put :: Text -> Put Source

get :: Get Text Source

putList :: [Text] -> Put Source

NFData Text Source
Instance details

Defined in Data.Text.Lazy

Methods

rnf :: Text -> () Source

Monoid Text Source
Instance details

Defined in Data.Text.Lazy

Methods

mempty :: Text

mappend :: Text -> Text -> Text

mconcat :: [Text] -> Text

Semigroup Text Source

Since: text-1.2.2.0

Instance details

Defined in Data.Text.Lazy

Methods

(<>) :: Text -> Text -> Text

sconcat :: NonEmpty Text -> Text

stimes :: Integral b => b -> Text -> Text

Data Text Source

This instance preserves data abstraction at the cost of inefficiency. We omit reflection services for the sake of data abstraction.

This instance was created by copying the updated behavior of Data.Text.Text

Instance details

Defined in Data.Text.Lazy

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Text -> c Text

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Text

toConstr :: Text -> Constr

dataTypeOf :: Text -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Text)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Text)

gmapT :: (forall b. Data b => b -> b) -> Text -> Text

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Text -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Text -> r

gmapQ :: (forall d. Data d => d -> u) -> Text -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Text -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Text -> m Text

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Text -> m Text

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Text -> m Text

IsString Text Source

Performs replacement on invalid scalar values:

>>> :set -XOverloadedStrings
>>> "\55555" :: Data.Text.Lazy.Text
"\65533"
Instance details

Defined in Data.Text.Lazy

Methods

fromString :: String -> Text

IsList Text Source

Performs replacement on invalid scalar values:

>>> :set -XOverloadedLists
>>> ['\55555'] :: Data.Text.Lazy.Text
"\65533"

Since: text-1.2.0.0

Instance details

Defined in Data.Text.Lazy

Associated Types

type Item Text
Instance details

Defined in Data.Text.Lazy

type Item Text = Char

Methods

fromList :: [Item Text] -> Text

fromListN :: Int -> [Item Text] -> Text

toList :: Text -> [Item Text]

Read Text Source
Instance details

Defined in Data.Text.Lazy

Show Text Source
Instance details

Defined in Data.Text.Lazy

Methods

showsPrec :: Int -> Text -> ShowS

show :: Text -> String

showList :: [Text] -> ShowS

Eq Text Source
Instance details

Defined in Data.Text.Lazy

Methods

(==) :: Text -> Text -> Bool Source

(/=) :: Text -> Text -> Bool Source

Ord Text Source
Instance details

Defined in Data.Text.Lazy

Methods

compare :: Text -> Text -> Ordering Source

(<) :: Text -> Text -> Bool Source

(<=) :: Text -> Text -> Bool Source

(>) :: Text -> Text -> Bool Source

(>=) :: Text -> Text -> Bool Source

max :: Text -> Text -> Text Source

min :: Text -> Text -> Text Source

Lift Text Source

Since: text-1.2.4.0

Instance details

Defined in Data.Text.Lazy

Methods

lift :: Quote m => Text -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => Text -> Code m Text

type Item Text Source
Instance details

Defined in Data.Text.Lazy

type Item Text = Char

type LazyText = Text Source

Type synonym for the lazy flavour of Text.

chunk :: Text -> Text -> Text Source

Smart constructor for Chunk. Guarantees the data type invariant.

empty :: Text Source

Smart constructor for Empty.

foldrChunks :: (Text -> a -> a) -> a -> Text -> a Source

Consume the chunks of a lazy Text with a natural right fold.

foldlChunks :: (a -> Text -> a) -> a -> Text -> a Source

Consume the chunks of a lazy Text with a strict, tail-recursive, accumulating left fold.

Data type invariant and abstraction functions

The data type invariant for lazy Text: Every Text is either Empty or consists of non-null Texts. All functions must preserve this, and the QC properties must check this.

strictInvariant :: Text -> Bool Source

Check the invariant strictly.

lazyInvariant :: Text -> Text Source

Check the invariant lazily.

showStructure :: Text -> String Source

Display the internal structure of a lazy Text.

Chunk allocation sizes

defaultChunkSize :: Int Source

Currently set to 16 KiB, less the memory management overhead.

smallChunkSize :: Int Source

Currently set to 128 bytes, less the memory management overhead.

chunkOverhead :: Int Source

The memory management overhead. Currently this is tuned for GHC only.

equal :: Text -> Text -> Bool Source

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.12.1/docs/libraries/text-2.1.2-84f9/Data-Text-Internal-Lazy.html