localization-1.0.0.20180213: Library for localization (l10n)

Safe HaskellSafe
LanguageHaskell2010

Data.Locale

Contents

Synopsis

Type Zero

data Zero Source #

Instances

LocaleInjP Zero ((:) * l ls) l Source # 

Methods

localeInjP :: FullLocale l -> Locale ((* ': l) ls) l Source #

Type Succ

data Succ p Source #

Instances

LocaleInjP p ls l => LocaleInjP (Succ p) ((:) * not_t ls) l Source # 

Methods

localeInjP :: FullLocale l -> Locale ((* ': not_t) ls) l Source #

Type Index

type family Index xs x where ... Source #

Equations

Index (x ': xs) x = Zero 
Index (not_x ': xs) x = Succ (Index xs x) 

Type Locale

data Locale (ls :: [*]) (l :: *) where Source #

Constructors

LocaleZ :: FullLocale l -> Locale (l ': ls) l 
LocaleS :: Locale ls l -> Locale (not_l ': ls) l infixr 5 

Instances

(Show (FullLocale l), Show (Locale ls l)) => Show (Locale ((:) * l ls) l) Source # 

Methods

showsPrec :: Int -> Locale ((* ': l) ls) l -> ShowS #

show :: Locale ((* ': l) ls) l -> String #

showList :: [Locale ((* ': l) ls) l] -> ShowS #

eqLocale :: Eq (FullLocale x) => Eq (FullLocale y) => Locale ls x -> Locale ls y -> Maybe (x :~: y) Source #

Type FullLocale

data family FullLocale (l :: *) :: * Source #

Instances

Enum (FullLocale EN) Source # 
Enum (FullLocale FR) Source # 
Eq (FullLocale EN) Source # 
Eq (FullLocale FR) Source # 
Ord (FullLocale EN) Source # 
Ord (FullLocale FR) Source # 
Show (FullLocale EN) Source # 
Show (FullLocale FR) Source # 
data FullLocale EN Source # 
data FullLocale FR Source # 

Type LocaleIn

data LocaleIn ls Source #

Constructors

(Eq (FullLocale l), Ord (FullLocale l)) => LocaleIn (Locale ls l) 

Instances

Eq (LocaleIn ls) Source # 

Methods

(==) :: LocaleIn ls -> LocaleIn ls -> Bool #

(/=) :: LocaleIn ls -> LocaleIn ls -> Bool #

Ord (LocaleIn ls) Source # 

Methods

compare :: LocaleIn ls -> LocaleIn ls -> Ordering #

(<) :: LocaleIn ls -> LocaleIn ls -> Bool #

(<=) :: LocaleIn ls -> LocaleIn ls -> Bool #

(>) :: LocaleIn ls -> LocaleIn ls -> Bool #

(>=) :: LocaleIn ls -> LocaleIn ls -> Bool #

max :: LocaleIn ls -> LocaleIn ls -> LocaleIn ls #

min :: LocaleIn ls -> LocaleIn ls -> LocaleIn ls #

Locales ls => Show (LocaleIn ls) Source # 

Methods

showsPrec :: Int -> LocaleIn ls -> ShowS #

show :: LocaleIn ls -> String #

showList :: [LocaleIn ls] -> ShowS #

Class LocaleInj

type LocaleInj ls l = LocaleInjP (Index ls l) ls l Source #

localeInj :: forall l ls. LocaleInj ls l => FullLocale l -> Locale ls l Source #

Class LocaleInjP

class LocaleInjP p ls l where Source #

Minimal complete definition

localeInjP

Methods

localeInjP :: FullLocale l -> Locale ls l Source #

Instances

LocaleInjP Zero ((:) * l ls) l Source # 

Methods

localeInjP :: FullLocale l -> Locale ((* ': l) ls) l Source #

LocaleInjP p ls l => LocaleInjP (Succ p) ((:) * not_t ls) l Source # 

Methods

localeInjP :: FullLocale l -> Locale ((* ': not_t) ls) l Source #

Class Localize

class Localize ls msg a where Source #

Minimal complete definition

localize

Methods

localize :: LocaleIn ls -> a -> msg Source #

Instances

(LocalizeIn l msg a, Localize ((:) * l1 ls) msg a) => Localize ((:) * l ((:) * l1 ls)) msg a Source # 

Methods

localize :: LocaleIn ((* ': l) ((* ': l1) ls)) -> a -> msg Source #

LocalizeIn l msg a => Localize ((:) * l ([] *)) msg a Source # 

Methods

localize :: LocaleIn ((* ': l) [*]) -> a -> msg Source #

Class LocalizeIn

class LocalizeIn l msg a where Source #

Minimal complete definition

localizeIn

Methods

localizeIn :: FullLocale l -> a -> msg Source #

Class Locales

class Locales ls where Source #

Minimal complete definition

locales

Methods

locales :: Map Text (LocaleIn ls) Source #

Instances

Locales ([] *) Source # 

Methods

locales :: Map Text (LocaleIn [*]) Source #

(LocalesFor l, Locales ls, Ord (FullLocale l)) => Locales ((:) * l ls) Source # 

Methods

locales :: Map Text (LocaleIn ((* ': l) ls)) Source #

countryCode :: forall ls. Locales ls => LocaleIn ls -> Text Source #

Class LocalesFor

class LocalesFor l where Source #

Minimal complete definition

localesFor

Type FR

Type EN