-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Track string casing in its type
--   
--   Track string casing in its type
@package cased
@version 0.1.0.0

module Data.Cased
data Lower
data Upper
data Mixed
data Yes
data No
newtype Cased a b
Cased :: b -> Cased a b
[fromCased] :: Cased a b -> b
class Casing a
toUpper :: Casing a => a -> a
toLower :: Casing a => a -> a
upperCased :: (Casing b, IsUpperCased a ~ No) => Cased a b -> Cased Upper b
lowerCased :: (Casing b, IsLowerCased a ~ No) => Cased a b -> Cased Lower b
mixedCased :: a -> Cased Mixed a
force :: (Cased Mixed b -> c) -> b -> c
instance GHC.Classes.Ord b => GHC.Classes.Ord (Data.Cased.Cased a b)
instance GHC.Classes.Eq b => GHC.Classes.Eq (Data.Cased.Cased a b)
instance GHC.Show.Show b => GHC.Show.Show (Data.Cased.Cased a b)
instance Data.Cased.Casing Data.Text.Internal.Text
instance Data.Cased.Casing Data.Text.Internal.Lazy.Text
instance Data.Cased.Casing GHC.Base.String
