base-4.20.0.0: Core data structures and operations
Copyright(c) The University of Glasgow 2008-2011
Licensesee libraries/base/LICENSE
Maintainerlibraries@haskell.org
Stabilityinternal
Portabilitynon-portable
Safe HaskellSafe
LanguageHaskell2010

GHC.IO.Encoding.Failure

Description

Types for specifying how text encoding/decoding fails

Synopsis

Documentation

data CodingFailureMode Source #

The CodingFailureMode is used to construct TextEncodings, and specifies how they handle illegal sequences.

Constructors

ErrorOnCodingFailure

Throw an error when an illegal sequence is encountered

IgnoreCodingFailure

Attempt to ignore and recover if an illegal sequence is encountered

TransliterateCodingFailure

Replace with the closest visual match upon an illegal sequence

RoundtripFailure

Use the private-use escape mechanism to attempt to allow illegal sequences to be roundtripped.

Instances

Instances details
Show CodingFailureMode

@since base-4.4.0.0

Instance details

Defined in GHC.Internal.IO.Encoding.Failure

isSurrogate :: Char -> Bool Source #

Some characters are actually "surrogate" codepoints defined for use in UTF-16. We need to signal an invalid character if we detect them when encoding a sequence of Chars into Word8s because they won't give valid Unicode.

We may also need to signal an invalid character if we detect them when encoding a sequence of Chars into Word8s because the RoundtripFailure mode creates these to round-trip bytes through our internal UTF-16 encoding.