module Text.Numeral.Entry
( Conversion(..)
, Entry(..)
, emptyEntry
) where
import "base" Data.Maybe ( Maybe(Nothing) )
import "base-unicode-symbols" Prelude.Unicode ( ℤ )
import "this" Text.Numeral.Exp.Reified ( Exp )
import "this" Text.Numeral.Grammar.Reified ( Inflection )
import "text" Data.Text ( Text )
data Conversion α = Conversion
{ toNumeral ∷ Inflection → α → Maybe Text
, toStructure ∷ α → Exp Inflection
}
data Entry = Entry
{ entIso639_1 ∷ Maybe Text
, entIso639_2 ∷ [Text]
, entIso639_3 ∷ Maybe Text
, entNativeNames ∷ [Text]
, entEnglishName ∷ Maybe Text
, entVariant ∷ Maybe Text
, entCardinal ∷ Maybe (Conversion ℤ)
, entOrdinal ∷ Maybe (Conversion ℤ)
, entPartitive ∷ Maybe (Conversion (ℤ, ℤ))
, entMultiplicative ∷ Maybe (Conversion ℤ)
}
emptyEntry ∷ Entry
emptyEntry = Entry
{ entIso639_1 = Nothing
, entIso639_2 = []
, entIso639_3 = Nothing
, entNativeNames = []
, entEnglishName = Nothing
, entVariant = Nothing
, entCardinal = Nothing
, entOrdinal = Nothing
, entPartitive = Nothing
, entMultiplicative = Nothing
}