uniform-strings-0.1.5.1: Manipulate and convert strings of characters uniformly and consistently
Safe HaskellSafe-Inferred
LanguageHaskell2010

Uniform.Strings.Conversion

Description

a module to convert between character string encodings

Synopsis

Documentation

data ByteString #

A space-efficient representation of a Word8 vector, supporting many efficient operations.

A ByteString contains 8-bit bytes, or by using the operations from Data.ByteString.Char8 it can be interpreted as containing 8-bit characters.

Instances

Instances details
Chunk ByteString 
Instance details

Defined in Data.Attoparsec.Internal.Types

Associated Types

type ChunkElem ByteString #

Data ByteString 
Instance details

Defined in Data.ByteString.Internal

Methods

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

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

toConstr :: ByteString -> Constr #

dataTypeOf :: ByteString -> DataType #

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

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

gmapT :: (forall b. Data b => b -> b) -> ByteString -> ByteString #

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

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

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

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

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

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

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

IsString ByteString

Beware: fromString truncates multi-byte characters to octets. e.g. "枯朶に烏のとまりけり秋の暮" becomes �6k�nh~�Q��n�

Instance details

Defined in Data.ByteString.Internal

Monoid ByteString 
Instance details

Defined in Data.ByteString.Internal

Semigroup ByteString 
Instance details

Defined in Data.ByteString.Internal

IsList ByteString

Since: bytestring-0.10.12.0

Instance details

Defined in Data.ByteString.Internal

Associated Types

type Item ByteString #

Read ByteString 
Instance details

Defined in Data.ByteString.Internal

Show ByteString 
Instance details

Defined in Data.ByteString.Internal

NFData ByteString 
Instance details

Defined in Data.ByteString.Internal

Methods

rnf :: ByteString -> () #

Eq ByteString 
Instance details

Defined in Data.ByteString.Internal

Ord ByteString 
Instance details

Defined in Data.ByteString.Internal

Hashable ByteString 
Instance details

Defined in Data.Hashable.Class

Zeros ByteString Source # 
Instance details

Defined in Uniform.Strings.Conversion

Lift ByteString

Since: bytestring-0.11.2.0

Instance details

Defined in Data.ByteString.Internal

Methods

lift :: Quote m => ByteString -> m Exp #

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

type ChunkElem ByteString 
Instance details

Defined in Data.Attoparsec.Internal.Types

type State ByteString 
Instance details

Defined in Data.Attoparsec.Internal.Types

type State ByteString = Buffer
type Item ByteString 
Instance details

Defined in Data.ByteString.Internal

s2u :: String -> String Source #

convert string to url (uses code from Network.HTTP, which converts space into %20)

s2t :: String -> Text Source #

String to Text (invertable)

t2s :: Text -> String Source #

String to Text (invertable)

data Text #

A space efficient, packed, unboxed Unicode text type.

Instances

Instances details
Chunk Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

Associated Types

type ChunkElem Text #

Hashable Text 
Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt :: Int -> Text -> Int #

hash :: Text -> Int #

ListForms Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Associated Types

type LF Text #

Methods

prependOne :: LF Text -> Text -> Text #

appendOne :: Text -> LF Text -> Text #

mkOne :: LF Text -> Text #

appendTwo :: Text -> Text -> Text #

Zeros Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

zero :: Text #

isZero :: Text -> Bool #

notZero :: Text -> Bool #

CharChains Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

NiceStrings Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

CharChains2 Text Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: Text -> Text Source #

CharChains2 Text String Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: Text -> String Source #

CharChains2 String Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: String -> Text Source #

CharChains2 () Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: () -> Text Source #

CharChains2 Bool Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: Bool -> Text Source #

CharChains2 Double Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: Double -> Text Source #

CharChains2 Float Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: Float -> Text Source #

CharChains2 Int Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: Int -> Text Source #

Show a => CharChains2 [a] Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: [a] -> Text Source #

(Show a, Show b) => CharChains2 (a, b) Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

Methods

show' :: (a, b) -> Text Source #

type ChunkElem Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

type State Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

type State Text = Buffer
type Item Text 
Instance details

Defined in Data.Text

type Item Text = Char
type LF Text Source # 
Instance details

Defined in Uniform.Strings.Utilities

type LF Text = Char

newtype BSUTF Source #

Constructors

BSUTF ByteString 

Instances

Instances details
Monoid BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

mempty :: BSUTF #

mappend :: BSUTF -> BSUTF -> BSUTF #

mconcat :: [BSUTF] -> BSUTF #

Semigroup BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

(<>) :: BSUTF -> BSUTF -> BSUTF #

sconcat :: NonEmpty BSUTF -> BSUTF #

stimes :: Integral b => b -> BSUTF -> BSUTF #

Generic BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Associated Types

type Rep BSUTF :: Type -> Type #

Methods

from :: BSUTF -> Rep BSUTF x #

to :: Rep BSUTF x -> BSUTF #

Read BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Show BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

showsPrec :: Int -> BSUTF -> ShowS #

show :: BSUTF -> String #

showList :: [BSUTF] -> ShowS #

Eq BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

(==) :: BSUTF -> BSUTF -> Bool #

(/=) :: BSUTF -> BSUTF -> Bool #

Ord BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

compare :: BSUTF -> BSUTF -> Ordering #

(<) :: BSUTF -> BSUTF -> Bool #

(<=) :: BSUTF -> BSUTF -> Bool #

(>) :: BSUTF -> BSUTF -> Bool #

(>=) :: BSUTF -> BSUTF -> Bool #

max :: BSUTF -> BSUTF -> BSUTF #

min :: BSUTF -> BSUTF -> BSUTF #

ListForms BSUTF Source # 
Instance details

Defined in Uniform.Strings.Utilities

Associated Types

type LF BSUTF #

Zeros BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

zero :: BSUTF #

isZero :: BSUTF -> Bool #

notZero :: BSUTF -> Bool #

CharChains BSUTF Source # 
Instance details

Defined in Uniform.Strings.Utilities

type Rep BSUTF Source # 
Instance details

Defined in Uniform.Strings.Conversion

type Rep BSUTF = D1 ('MetaData "BSUTF" "Uniform.Strings.Conversion" "uniform-strings-0.1.5.1-CZQKPfo5qAD3vIrE2CSSvz" 'True) (C1 ('MetaCons "BSUTF" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByteString)))
type LF BSUTF Source # 
Instance details

Defined in Uniform.Strings.Utilities

type LF BSUTF = Char

newtype URL Source #

Constructors

URL String 

Instances

Instances details
Show URL Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

showsPrec :: Int -> URL -> ShowS #

show :: URL -> String #

showList :: [URL] -> ShowS #

Eq URL Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

(==) :: URL -> URL -> Bool #

(/=) :: URL -> URL -> Bool #

Zeros URL Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

zero :: URL #

isZero :: URL -> Bool #

notZero :: URL -> Bool #

data URLform Source #

Instances

Instances details
Show URLform Source # 
Instance details

Defined in Uniform.Strings.Conversion

Eq URLform Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

(==) :: URLform -> URLform -> Bool #

(/=) :: URLform -> URLform -> Bool #

b2uf :: ByteString -> ByteString Source #

convert ByteString to url (uses code from SNAP which converts space into +)

b2urlf :: ByteString -> URLform Source #

convert string to url (uses code from SNAP, which converts space into +)

urlf2b :: URLform -> ByteString Source #

convert url to string (uses code from SNAP, which converts space into +)

bu2t :: BSUTF -> Text Source #

ByteString to Text -- inverse (not an arbitrary input)

t2bu :: Text -> BSUTF Source #

Text to Bytestring (invertable)

s2bu :: String -> BSUTF Source #

String to Bytestring (invertable)

u2s :: String -> Maybe String Source #

convert url to string (uses code from Network.HTTP, which converts space into %20)

bl2t :: LazyByteString -> Text Source #

conversion from LazyByteString to text (only if guarantee that only utf8 values)

newtype BSlat Source #

bytestring with latin1 encoded characters

Constructors

BSlat ByteString 

Instances

Instances details
Show BSlat Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

showsPrec :: Int -> BSlat -> ShowS #

show :: BSlat -> String #

showList :: [BSlat] -> ShowS #

Eq BSlat Source # 
Instance details

Defined in Uniform.Strings.Conversion

Methods

(==) :: BSlat -> BSlat -> Bool #

(/=) :: BSlat -> BSlat -> Bool #

s2lat :: String -> Maybe BSlat Source #

string encoded as ByteString with latin encoding, if possible

lat2s :: BSlat -> String Source #

bytestring with latin encoding to string

t2lat :: Text -> Maybe BSlat Source #

Text encoded as ByteString with latin encoding, if possible

lat2t :: BSlat -> Text Source #

Text encoded as ByteString with latin encoding, if possible

s3lat :: String -> BSlat Source #

string converted to represenatable as latin and then encoded lossy!

t3lat :: Text -> BSlat Source #

Text converted to represenatable as latin and then encoded lossy!

s2url :: String -> URL Source #

convert string to url (uses code from Network.HTTP, which converts space into %20)

url2s :: URL -> String Source #

convert url to string (uses code from Network.HTTP, which converts space into %20)

t22latin :: Text -> Maybe ByteString Source #

converts text to bytestring, if meaningful

convertLatin :: String -> String Source #

convert a string to contain only characters in latin1

findNonLatinChars :: String -> String Source #

the result is a string of all the characters not in the latin1 encoding possibly apply conv2latinChar first

findNonLatinCharsT :: Text -> Text Source #

the result is a string of all the characters not in the latin1 encoding

Orphan instances