module Data.Char.Properties.GeneralCategory ( module Data.Char.Properties.GeneralCategoryTypes, module Data.Char.Properties.GeneralCategoryData, module Data.Char.Properties.GeneralCategory ) where { import Data.Char.Properties.GeneralCategoryData; import Data.Char.Properties.GeneralCategoryTypes; import Prelude; instance Show GeneralCategory where { show GcLu = "Lu"; show GcLl = "Ll"; show GcLt = "Lt"; show GcLm = "Lm"; show GcLo = "Lo"; show GcMn = "Mn"; show GcMc = "Mc"; show GcMe = "Me"; show GcNd = "Nd"; show GcNl = "Nl"; show GcNo = "No"; show GcZs = "Zs"; show GcZl = "Zl"; show GcZp = "Zp"; show GcPc = "Pc"; show GcPd = "Pd"; show GcPs = "Ps"; show GcPe = "Pe"; show GcPi = "Pi"; show GcPf = "Pf"; show GcPo = "Po"; show GcSm = "Sm"; show GcSc = "Sc"; show GcSk = "Sk"; show GcSo = "So"; show GcCc = "Cc"; show GcCf = "Cf"; show GcCs = "Cs"; show GcCo = "Co"; show GcCn = "Cn"; }; data GCMajorClass = ClLetter | ClMark | ClNumber | ClSeparator | ClPunctuation | ClSymbol | ClOther deriving Eq; instance Show GCMajorClass where { show ClLetter = "Letter"; show ClMark = "Mark"; show ClNumber = "Number"; show ClSeparator = "Separator"; show ClPunctuation = "Punctuation"; show ClSymbol = "Symbol"; show ClOther = "Other"; }; gcMajorClass :: GeneralCategory -> GCMajorClass; gcMajorClass GcLu = ClLetter ; gcMajorClass GcLl = ClLetter ; gcMajorClass GcLt = ClLetter ; gcMajorClass GcLm = ClLetter ; gcMajorClass GcLo = ClLetter ; gcMajorClass GcMn = ClMark ; gcMajorClass GcMc = ClMark ; gcMajorClass GcMe = ClMark ; gcMajorClass GcNd = ClNumber ; gcMajorClass GcNl = ClNumber ; gcMajorClass GcNo = ClNumber ; gcMajorClass GcZs = ClSeparator ; gcMajorClass GcZl = ClSeparator ; gcMajorClass GcZp = ClSeparator ; gcMajorClass GcPc = ClPunctuation ; gcMajorClass GcPd = ClPunctuation ; gcMajorClass GcPs = ClPunctuation ; gcMajorClass GcPe = ClPunctuation ; gcMajorClass GcPi = ClPunctuation ; gcMajorClass GcPf = ClPunctuation ; gcMajorClass GcPo = ClPunctuation ; gcMajorClass GcSm = ClSymbol ; gcMajorClass GcSc = ClSymbol ; gcMajorClass GcSk = ClSymbol ; gcMajorClass GcSo = ClSymbol ; gcMajorClass GcCc = ClOther ; gcMajorClass GcCf = ClOther ; gcMajorClass GcCs = ClOther ; gcMajorClass GcCo = ClOther ; gcMajorClass GcCn = ClOther ; }