{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE InstanceSigs #-} {-# LANGUAGE MultiParamTypeClasses #-} module HaskellWorks.Data.Xml.Internal.ToIbBp64 ( toBalancedParens64 , toInterestBits64 , toIbBp64 ) where import Data.ByteString (ByteString) import HaskellWorks.Data.Xml.Internal.BalancedParens import HaskellWorks.Data.Xml.Internal.List import HaskellWorks.Data.Xml.Succinct.Cursor.BlankedXml (BlankedXml (..)) toBalancedParens64 :: BlankedXml -> [ByteString] toBalancedParens64 :: BlankedXml -> [ByteString] toBalancedParens64 (BlankedXml [ByteString] bj) = [ByteString] -> [ByteString] compressWordAsBit ([ByteString] -> [ByteString] blankedXmlToBalancedParens [ByteString] bj) toInterestBits64 :: BlankedXml -> [ByteString] toInterestBits64 :: BlankedXml -> [ByteString] toInterestBits64 (BlankedXml [ByteString] bj) = [ByteString] -> [ByteString] blankedXmlToInterestBits [ByteString] bj toIbBp64 :: BlankedXml -> [(ByteString, ByteString)] toIbBp64 :: BlankedXml -> [(ByteString, ByteString)] toIbBp64 BlankedXml bj = [ByteString] -> [ByteString] -> [(ByteString, ByteString)] forall a b. [a] -> [b] -> [(a, b)] zip (BlankedXml -> [ByteString] toInterestBits64 BlankedXml bj) (BlankedXml -> [ByteString] toBalancedParens64 BlankedXml bj)