text-2.1.3: An efficient packed Unicode text type.
Copyright(c) 2008 2009 Tom Harper
(c) 2009 2010 Bryan O'Sullivan
(c) 2009 Duncan Coutts
(c) 2021 Andrew Lelechenko
LicenseBSD-style
Maintainerbos@serpentine.com
Stabilityexperimental
PortabilityGHC
Safe HaskellNone
LanguageHaskell2010

Data.Text.Internal.Encoding.Utf8

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!

Basic UTF-8 validation and character manipulation.

Synopsis

Documentation

utf8Length :: Char -> Int #

Since: text-2.0

utf8LengthByLeader :: Word8 -> Int #

Since: text-2.0

ord2 :: Char -> (Word8, Word8) #

chr2 :: Word8 -> Word8 -> Char #

chr3 :: Word8 -> Word8 -> Word8 -> Char #

chr4 :: Word8 -> Word8 -> Word8 -> Word8 -> Char #

Validation

Naive decoding

newtype DecoderState #

Constructors

DecoderState Word8 

Instances

Instances details
Eq DecoderState # 
Instance details

Defined in Data.Text.Internal.Encoding.Utf8

Show DecoderState # 
Instance details

Defined in Data.Text.Internal.Encoding.Utf8

data DecoderResult #

Since: text-2.0

newtype CodePoint #

Constructors

CodePoint Int 

utf8DecodeStart :: Word8 -> DecoderResult #

Since: text-2.0