- openConv ∷ CIAscii → m TC.Converter
- openConv charset
- = let cs = A.toString $ A.fromCIAscii charset
- open' = TC.open cs (Just True)
- in
- case unsafePerformIO $ E.try open' of
- Right conv → return conv
- Left err → fail $ show (err ∷ ICUError)
+getDecoder ∷ Monad m ⇒ CIAscii → m Decoder
+getDecoder charset
+ | charset ≡ "UTF-8" = return decodeUtf8'
+ | charset ≡ "US-ASCII" = return decodeUtf8'
+ | otherwise = fail $ "No decoders found for charset: "
+ ⧺ A.toString (A.fromCIAscii charset)