{-| This module is only exported for the use of the 'publicsuffixlistcreate' package. Every one else should consider everything in this file to be opaque. -} module Network.PublicSuffixList.Types where import Data.Default import qualified Data.Map as M import qualified Data.Text as T newtype Tree e = Node { children :: M.Map e (Tree e) } deriving (Show, Eq) instance Ord e => Default (Tree e) where def = Node M.empty type DataStructure = (Tree T.Text, Tree T.Text)