-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Parsers for Unicode Character Database (UCD) files -- -- This package provides simple ByteString parsers for the -- Unicode character database (UCD). @package unicode-data-parser @version 0.1.0.0 -- | Miscellaneous bits common to various parsers module UCD.Parser.Common -- | Parse a code point formatted as hexadecimal -- -- Warning: raise an error on invalid input. -- --
-- >>> readCodePoint "0061" -- 'a' --readCodePoint :: ByteString -> Char -- | Parse a code point formatted as hexadecimal, or return Nothing -- on an empty string. -- -- Warning: raise an error on invalid input. -- --
-- >>> readCodePointM "0061" -- Just 'a' -- -- >>> readCodePointM "" -- Nothing ---- -- See also: readCodePoint. readCodePointM :: ByteString -> Maybe Char -- | A Unicode code point range data UnicodeRange a SingleChar :: !Char -> UnicodeRange a [_first] :: UnicodeRange a -> !Char CharRange :: !Char -> !Char -> !a -> UnicodeRange a [_first] :: UnicodeRange a -> !Char [_last] :: UnicodeRange a -> !Char [_rangeName] :: UnicodeRange a -> !a -- | Parse AAAA..BBBB range parseRange :: ByteString -> UnicodeRange () -- |
-- , --pattern Comma :: Word8 -- |
-- # --pattern HashTag :: Word8 -- |
-- '\n' --pattern NewLine :: Word8 -- |
-- . --pattern Period :: Word8 -- |
-- ; --pattern SemiColon :: Word8 -- |
-- / --pattern Slash :: Word8 instance GHC.Classes.Eq a => GHC.Classes.Eq (UCD.Parser.Common.UnicodeRange a) instance GHC.Show.Show a => GHC.Show.Show (UCD.Parser.Common.UnicodeRange a) -- | Parser for properties files: -- -- module UCD.Parser.Property -- | An entry from a properties file data Entry Entry :: !UnicodeRange () -> !ShortByteString -> Entry [_range] :: Entry -> !UnicodeRange () [_property] :: Entry -> !ShortByteString -- | A parser for properties files parse :: ByteString -> [Entry] instance GHC.Classes.Eq UCD.Parser.Property.Entry instance GHC.Show.Show UCD.Parser.Property.Entry -- | Parser for UnicodeData.txt. module UCD.Parser.UnicodeData -- | See: https://www.unicode.org/reports/tr44/#General_Category data GeneralCategory -- | Letter, Uppercase Lu :: GeneralCategory -- | Letter, Lowercase Ll :: GeneralCategory -- | Letter, Titlecase Lt :: GeneralCategory -- | Letter, Modifier Lm :: GeneralCategory -- | Letter, Other Lo :: GeneralCategory -- | Mark, Non-Spacing Mn :: GeneralCategory -- | Mark, Spacing Combining Mc :: GeneralCategory -- | Mark, Enclosing Me :: GeneralCategory -- | Number, Decimal Nd :: GeneralCategory -- | Number, Letter Nl :: GeneralCategory -- | Number, Other No :: GeneralCategory -- | Punctuation, Connector Pc :: GeneralCategory -- | Punctuation, Dash Pd :: GeneralCategory -- | Punctuation, Open Ps :: GeneralCategory -- | Punctuation, Close Pe :: GeneralCategory -- | Punctuation, Initial quote Pi :: GeneralCategory -- | Punctuation, Final quote Pf :: GeneralCategory -- | Punctuation, Other Po :: GeneralCategory -- | Symbol, Math Sm :: GeneralCategory -- | Symbol, Currency Sc :: GeneralCategory -- | Symbol, Modifier Sk :: GeneralCategory -- | Symbol, Other So :: GeneralCategory -- | Separator, Space Zs :: GeneralCategory -- | Separator, Line Zl :: GeneralCategory -- | Separator, Paragraph Zp :: GeneralCategory -- | Other, Control Cc :: GeneralCategory -- | Other, Format Cf :: GeneralCategory -- | Other, Surrogate Cs :: GeneralCategory -- | Other, Private Use Co :: GeneralCategory -- | Other, Not Assigned Cn :: GeneralCategory -- | See: -- https://www.unicode.org/reports/tr44/#Character_Decomposition_Mappings data DecompositionType DTCanonical :: DecompositionType DTCompat :: DecompositionType DTFont :: DecompositionType DTNoBreak :: DecompositionType DTInitial :: DecompositionType DTMedial :: DecompositionType DTFinal :: DecompositionType DTIsolated :: DecompositionType DTCircle :: DecompositionType DTSuper :: DecompositionType DTSub :: DecompositionType DTVertical :: DecompositionType DTWide :: DecompositionType DTNarrow :: DecompositionType DTSmall :: DecompositionType DTSquare :: DecompositionType DTFraction :: DecompositionType -- | Unicode decomposition of a code point data Decomposition Self :: Decomposition Decomposition :: !DecompositionType -> ![Char] -> Decomposition -- | An entry in UnicodeData.txt. data Entry Entry :: !UnicodeRange ShortByteString -> !CharDetails -> Entry [_range] :: Entry -> !UnicodeRange ShortByteString [_details] :: Entry -> !CharDetails -- | Numeric value of a code point, if relevant data NumericValue NotNumeric :: NumericValue Digit :: !Word8 -> NumericValue Integer :: !Integer -> NumericValue Rational :: !Rational -> NumericValue -- | Core characteristics of a Unicode code point data CharDetails CharDetails :: !GeneralCategory -> !Int -> !Decomposition -> !NumericValue -> !Maybe Char -> !Maybe Char -> !Maybe Char -> CharDetails [_generalCategory] :: CharDetails -> !GeneralCategory [_combiningClass] :: CharDetails -> !Int [_decomposition] :: CharDetails -> !Decomposition [_numericValue] :: CharDetails -> !NumericValue [_simpleUpperCaseMapping] :: CharDetails -> !Maybe Char [_simpleLowerCaseMapping] :: CharDetails -> !Maybe Char [_simpleTitleCaseMapping] :: CharDetails -> !Maybe Char -- | Parser for UnicodeData.txt file parse :: ByteString -> [Entry] instance GHC.Enum.Bounded UCD.Parser.UnicodeData.GeneralCategory instance GHC.Enum.Enum UCD.Parser.UnicodeData.GeneralCategory instance GHC.Classes.Eq UCD.Parser.UnicodeData.CharDetails instance GHC.Classes.Eq UCD.Parser.UnicodeData.Decomposition instance GHC.Classes.Eq UCD.Parser.UnicodeData.DecompositionType instance GHC.Classes.Eq UCD.Parser.UnicodeData.Entry instance GHC.Classes.Eq UCD.Parser.UnicodeData.GeneralCategory instance GHC.Classes.Eq UCD.Parser.UnicodeData.NumericValue instance GHC.Read.Read UCD.Parser.UnicodeData.GeneralCategory instance GHC.Show.Show UCD.Parser.UnicodeData.CharDetails instance GHC.Show.Show UCD.Parser.UnicodeData.Decomposition instance GHC.Show.Show UCD.Parser.UnicodeData.DecompositionType instance GHC.Show.Show UCD.Parser.UnicodeData.Entry instance GHC.Show.Show UCD.Parser.UnicodeData.GeneralCategory instance GHC.Show.Show UCD.Parser.UnicodeData.NumericValue