| Maintainer | Bas van Dijk <v.dijk.bas@gmail.com> |
|---|
Data.CaseInsensitive
Description
This module is intended to be imported qualified. May I suggest:
import Data.CaseInsensitive ( CI ) import qualifed Data.CaseInsensitivee as CI
Documentation
A CI s provides Case Insensitive comparison for the string-like type
s (for example: String, Text, ByteString, ShowS, etc.).
Note that CI s has an instance for IsString which together with the
OverloadedStrings language extension allows you to write case insensitive
string literals as in:
> ("Content-Type" :: CI Text) == ("CONTENT-TYPE" :: CI Text)
True
foldedCase :: CI s -> sSource
Retrieve the case folded string-like value.
(Also see foldCase).
map :: FoldCase s2 => (s1 -> s2) -> CI s1 -> CI s2Source
Transform the original string-like value but keep it case insensitive.
Class of string-like types that support folding cases.
Note that the instances for Char, String, ShowS and the ByteString
types do not perform fully correct Unicode-aware case folding, they simply
toLower their characters! This is of course more than suitable for ASCII
encoded strings.
The instances for the Text types use toCaseFold which performs a
better Unicode-aware case fold which is more suitable for case insensitive
string comparisons.