text-1.2.2.1: An efficient packed Unicode text type.

Copyright(c) Tom Harper 2008-2009, (c) Bryan O'Sullivan 2009, (c) Duncan Coutts 2009, (c) Jasper Van der Jeugt 2011
LicenseBSD-style
Maintainerbos@serpentine.com
Stabilityexperimental
PortabilityGHC
Safe HaskellNone
LanguageHaskell98

Data.Text.Internal.Fusion.Types

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!

Core stream fusion functionality for text.

Synopsis

Documentation

data CC s Source

Specialised tuple for case conversion.

Constructors

CC !s !Char !Char 

data PairS a b Source

Strict pair.

Constructors

!a :*: !b infixl 2 

data Scan s Source

An intermediate result in a scan.

Constructors

Scan1 !Char !s 
Scan2 !Char !s 

data RS s Source

Restreaming state.

Constructors

RS0 !s 
RS1 !s !Word8 
RS2 !s !Word8 !Word8 
RS3 !s !Word8 !Word8 !Word8 

data Step s a Source

Intermediate result in a processing pipeline.

Constructors

Done 
Skip !s 
Yield !a !s 

data Stream a Source

Constructors

forall s . Stream (s -> Step s a) !s !Size 

Instances

Eq a => Eq (Stream a) Source 
Ord a => Ord (Stream a) Source 

empty :: Stream a Source

The empty stream.