@@ 13,6 13,7 @@ import GHC.Base (unsafeChr)
import Data.Char (ord, isHexDigit)
import Numeric (readHex)
+-- | An FcCharSet is a set of Unicode chars.
type CharSet = Set Char
parseChar :: String -> Char
@@ 21,6 22,7 @@ replaceWild ch ('?':rest) = ch:replaceWild ch rest
replaceWild ch (c:cs) = c:replaceWild ch cs
replaceWild _ "" = ""
parseWild ch str = parseChar $ replaceWild ch str
+-- | Utility for parsing "unicode-range" @font-face property.
parseCharSet ('U':rest) = parseCharSet ('u':rest) -- lowercase initial "u"
parseCharSet ('u':'+':cs)
| (start@(_:_), '-':ends) <- span isHexDigit cs,