binary-instances-1: src/Data/Binary/Instances/UnorderedContainers.hs
{-# OPTIONS_GHC -fno-warn-orphans #-}
module Data.Binary.Instances.UnorderedContainers where
import Data.Binary (Binary, get, put)
import Data.Binary.Orphans ()
import qualified Data.Hashable as Hashable
import qualified Data.HashMap.Lazy as HM
import qualified Data.HashSet as HS
instance (Hashable.Hashable k, Eq k, Binary k, Binary v) => Binary (HM.HashMap k v) where
get = fmap HM.fromList get
put = put . HM.toList
instance (Hashable.Hashable v, Eq v, Binary v) => Binary (HS.HashSet v) where
get = fmap HS.fromList get
put = put . HS.toList