-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Internal Phonetic Alphabet (IPA) -- -- Types and tools for working with the International Phonetic Alphabet -- (IPA) @package ipa @version 0.1.0.1 module Language.IPA.Types -- | Textual representation of a speech segment or grouping of segments, -- with zero or more articulatory features; encoded in IPA transcription. -- Note this has a Semigroup instance, so various IPAs can -- conveniently be concatenated with <> newtype IPA IPA :: Text -> IPA [unIPA] :: IPA -> Text -- | Normalizes text value to NFC before wrapping it in IPA. This is -- to ensure the comparability of IPA values mkIPA :: Text -> IPA newtype XSampa XSampa :: Text -> XSampa -- | A single segment, or combination of a segment and articulatory feature data Segment -- | Pulmonic and non-pulmonic consonants Consonant :: Consonant -> Segment Vowel :: Height -> Backness -> Roundedness -> Segment -- | A null/zero phone Zero :: Segment -- | Various other articulatory features WithSegmentalFeature :: SegmentalFeature -> Segment -> Segment -- | Pulmonic and non-pulmonic consonants data Consonant Pulmonic :: Phonation -> Place -> Manner -> Consonant Ejective :: Place -> Manner -> Consonant Implosive :: Phonation -> Place -> Consonant Click :: Place -> Consonant DoublyArticulated :: Phonation -> Place -> Place -> Manner -> Consonant pattern PulmonicConsonant :: Phonation -> Place -> Manner -> Segment pattern EjectiveConsonant :: Place -> Manner -> Segment pattern ClickConsonant :: Place -> Segment pattern ImplosiveConsonant :: Phonation -> Place -> Segment -- | Consonantal manner of articulation data Manner Nasal :: Manner Plosive :: Manner Fricative :: Sibilance -> Manner Affricate :: Sibilance -> Manner Approximant :: Manner Flap :: Manner Trill :: Manner LateralAffricate :: Manner LateralFricative :: Manner LateralApproximant :: Manner LateralFlap :: Manner -- | Consonantal place of articulation data Place Bilabial :: Place LabioDental :: Place LinguoLabial :: Place Dental :: Place Alveolar :: Place PostAlveolar :: Place Retroflex :: Place Palatal :: Place Velar :: Place Uvular :: Place Pharyngeal :: Place Glottal :: Place -- | Phonation (voicing) data Phonation Voiced :: Phonation Voiceless :: Phonation -- | Sibilance for fricative consonants data Sibilance Sibilant :: Sibilance NonSibilant :: Sibilance -- | Vowel height data Height Close :: Height NearClose :: Height CloseMid :: Height Mid :: Height OpenMid :: Height NearOpen :: Height Open :: Height -- | Vowel backness data Backness Front :: Backness NearFront :: Backness Central :: Backness NearBack :: Backness Back :: Backness -- | Vowel roundedness data Roundedness Rounded :: Roundedness Unrounded :: Roundedness -- | Multiple segments, or combination of multiple segments with -- suprasegmental feature data Syllable t -- | A grouping of segments Syllable :: t Segment -> Syllable t -- | Articulatory features that affect/encompass the entire syllable WithSuprasegmentalFeature :: SuprasegmentalFeature -> Syllable t -> Syllable t data SuprasegmentalFeature -- | Level lexical tone LevelLexicalTone :: LevelTone -> SuprasegmentalFeature -- | Level lexical tone, diactritic notation LevelLexicalToneDiacritic :: LevelTone -> SuprasegmentalFeature -- | Lexical tone as a contour LexicalToneContour :: ToneContour -> SuprasegmentalFeature -- | Lexical tone as a contour, diacritic notation LexicalToneContourDiacritic :: ToneContour -> SuprasegmentalFeature Stress :: Stress -> SuprasegmentalFeature Break :: SuprasegmentalFeature Linking :: SuprasegmentalFeature -- | Lexical tone represented as a contour data ToneContour Rising :: ToneContour Falling :: ToneContour HighRising :: ToneContour LowRising :: ToneContour HighFalling :: ToneContour LowFalling :: ToneContour RisingFalling :: ToneContour FallingRising :: ToneContour GlobalRise :: ToneContour GlobalFall :: ToneContour -- | Lexical tone with Chao-style tone letters data LevelTone ExtraHighTone :: LevelTone HighTone :: LevelTone MidTone :: LevelTone LowTone :: LevelTone ExtraLowTone :: LevelTone DownStep :: LevelTone UpStep :: LevelTone data Stress Primary :: Stress Secondary :: Stress -- | Vowel length; also serves as a notation for consonant gemination in -- the IPA data Length OverLong :: Length HalfLong :: Length Long :: Length -- | The default/unmarked length; using this constructor doesn't affect the -- default IPA representation of the segment Short :: Length ExtraShort :: Length -- | Various articulatory features with a diacritic represenation in the -- IPA. These can be combined with Segments using the -- WithSegmentalFeature constructor of that type to produce a -- Segment annotated with a given articulatory feature, e.g.: -- --
-- >>> toIPA $ WithSegmentalFeature (Length Long) (Vowel Close Front Unrounded) -- Just (IPA "i\720") -- iː --data SegmentalFeature Voicing :: Phonation -> SegmentalFeature Length :: Length -> SegmentalFeature SecondaryArticulation :: Segment -> SegmentalFeature SuperScriptNumeric :: Int -> SegmentalFeature Aspirated :: SegmentalFeature MoreRounded :: SegmentalFeature LessRounded :: SegmentalFeature Advanced :: SegmentalFeature Retracted :: SegmentalFeature Centralized :: SegmentalFeature MidCentralized :: SegmentalFeature Compressed :: SegmentalFeature Syllabic :: SegmentalFeature NonSyllabic :: SegmentalFeature Rhotacized :: SegmentalFeature BreathyVoice :: SegmentalFeature CreakyVoice :: SegmentalFeature LinguoLabialized :: SegmentalFeature Labialized :: SegmentalFeature Palatalized :: SegmentalFeature Velarized :: SegmentalFeature Pharyngealized :: SegmentalFeature Raised :: SegmentalFeature Lowered :: SegmentalFeature AdvancedTongueRoot :: SegmentalFeature RetractedTongueRoot :: SegmentalFeature Dentalized :: SegmentalFeature Apical :: SegmentalFeature Laminal :: SegmentalFeature Nasalized :: SegmentalFeature NasalRelease :: SegmentalFeature LateralRelease :: SegmentalFeature NoAudibleRelease :: SegmentalFeature instance GHC.Generics.Generic (Language.IPA.Types.Syllable t) instance GHC.Generics.Generic Language.IPA.Types.SuprasegmentalFeature instance GHC.Classes.Eq Language.IPA.Types.SuprasegmentalFeature instance GHC.Show.Show Language.IPA.Types.SuprasegmentalFeature instance GHC.Classes.Ord Language.IPA.Types.Stress instance GHC.Generics.Generic Language.IPA.Types.Stress instance GHC.Classes.Eq Language.IPA.Types.Stress instance GHC.Show.Show Language.IPA.Types.Stress instance GHC.Generics.Generic Language.IPA.Types.Segment instance GHC.Classes.Eq Language.IPA.Types.Segment instance GHC.Show.Show Language.IPA.Types.Segment instance GHC.Generics.Generic Language.IPA.Types.SegmentalFeature instance GHC.Classes.Eq Language.IPA.Types.SegmentalFeature instance GHC.Show.Show Language.IPA.Types.SegmentalFeature instance GHC.Classes.Ord Language.IPA.Types.Length instance GHC.Generics.Generic Language.IPA.Types.Length instance GHC.Classes.Eq Language.IPA.Types.Length instance GHC.Show.Show Language.IPA.Types.Length instance GHC.Classes.Ord Language.IPA.Types.ToneContour instance GHC.Generics.Generic Language.IPA.Types.ToneContour instance GHC.Classes.Eq Language.IPA.Types.ToneContour instance GHC.Show.Show Language.IPA.Types.ToneContour instance GHC.Classes.Ord Language.IPA.Types.LevelTone instance GHC.Generics.Generic Language.IPA.Types.LevelTone instance GHC.Classes.Eq Language.IPA.Types.LevelTone instance GHC.Show.Show Language.IPA.Types.LevelTone instance GHC.Generics.Generic Language.IPA.Types.Roundedness instance GHC.Classes.Eq Language.IPA.Types.Roundedness instance GHC.Show.Show Language.IPA.Types.Roundedness instance GHC.Classes.Ord Language.IPA.Types.Backness instance GHC.Generics.Generic Language.IPA.Types.Backness instance GHC.Classes.Eq Language.IPA.Types.Backness instance GHC.Show.Show Language.IPA.Types.Backness instance GHC.Generics.Generic Language.IPA.Types.Height instance GHC.Classes.Eq Language.IPA.Types.Height instance GHC.Show.Show Language.IPA.Types.Height instance GHC.Generics.Generic Language.IPA.Types.Consonant instance GHC.Classes.Eq Language.IPA.Types.Consonant instance GHC.Show.Show Language.IPA.Types.Consonant instance GHC.Generics.Generic Language.IPA.Types.Manner instance GHC.Classes.Eq Language.IPA.Types.Manner instance GHC.Show.Show Language.IPA.Types.Manner instance GHC.Generics.Generic Language.IPA.Types.Sibilance instance GHC.Classes.Eq Language.IPA.Types.Sibilance instance GHC.Show.Show Language.IPA.Types.Sibilance instance GHC.Generics.Generic Language.IPA.Types.Phonation instance GHC.Classes.Eq Language.IPA.Types.Phonation instance GHC.Show.Show Language.IPA.Types.Phonation instance GHC.Classes.Ord Language.IPA.Types.Place instance GHC.Generics.Generic Language.IPA.Types.Place instance GHC.Classes.Eq Language.IPA.Types.Place instance GHC.Show.Show Language.IPA.Types.Place instance GHC.Generics.Generic Language.IPA.Types.XSampa instance GHC.Classes.Eq Language.IPA.Types.XSampa instance GHC.Show.Show Language.IPA.Types.XSampa instance GHC.Base.Semigroup Language.IPA.Types.IPA instance GHC.Generics.Generic Language.IPA.Types.IPA instance GHC.Classes.Eq Language.IPA.Types.IPA instance GHC.Show.Show Language.IPA.Types.IPA instance GHC.Show.Show (t Language.IPA.Types.Segment) => GHC.Show.Show (Language.IPA.Types.Syllable t) instance GHC.Classes.Eq (t Language.IPA.Types.Segment) => GHC.Classes.Eq (Language.IPA.Types.Syllable t) -- | Working with IPA transcriptions module Language.IPA -- | Entities representable through IPA transcription class ReprIPA a -- | Produces an IPA transcription given a valid Segment; a -- result of Nothing indicates either an unattested-yet-possible -- segment, or one considered impossible toIPA :: ReprIPA a => a -> Maybe IPA -- | Partial function for creating an IPA. Useful if you are certain -- that the sound in question is representable toIPA' :: ReprIPA a => a -> IPA instance Data.Traversable.Traversable t => Language.IPA.ReprIPA (Language.IPA.Types.Syllable t) instance Language.IPA.ReprIPA Language.IPA.Types.Segment