Translations: don't depend on the fact that Aeson Object is...
implemented internally as a HashMap. This is no longer public as of aeson 2.0.0.0.
This commit is contained in:
parent
aa78765bf9
commit
d80aaee42b
2 changed files with 2 additions and 4 deletions
|
@ -578,7 +578,6 @@ library
|
|||
text-conversions >= 0.3 && < 0.4,
|
||||
time >= 1.5 && < 1.13,
|
||||
unicode-transforms >= 0.3 && < 0.4,
|
||||
unordered-containers >= 0.2 && < 0.3,
|
||||
xml >= 1.3.12 && < 1.4,
|
||||
xml-conduit >= 1.9.1.1 && < 1.10,
|
||||
unicode-collation >= 0.1.1 && < 0.2,
|
||||
|
|
|
@ -31,7 +31,6 @@ module Text.Pandoc.Translations (
|
|||
where
|
||||
import Data.Aeson.Types (Value(..), FromJSON(..))
|
||||
import qualified Data.Aeson.Types as Aeson
|
||||
import qualified Data.HashMap.Strict as HM
|
||||
import qualified Data.Map as M
|
||||
import qualified Data.Text as T
|
||||
import qualified Data.YAML as YAML
|
||||
|
@ -83,8 +82,8 @@ instance YAML.FromYAML Term where
|
|||
parseYAML invalid = YAML.typeMismatch "Term" invalid
|
||||
|
||||
instance FromJSON Translations where
|
||||
parseJSON (Object hm) = do
|
||||
xs <- mapM addItem (HM.toList hm)
|
||||
parseJSON o@(Object hm) = do
|
||||
xs <- parseJSON o >>= mapM addItem . M.toList
|
||||
return $ Translations (M.fromList xs)
|
||||
where addItem (k,v) =
|
||||
case safeRead k of
|
||||
|
|
Loading…
Add table
Reference in a new issue