{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses, TypeSynonymInstances #-} -- | Complex Type: @extensionsType@ module Data.Geo.GPX.Type.Extensions( Extensions , extensions , runExtensions ) where import Text.XML.HXT.Arrow.Pickle import Text.XML.HXT.DOM.TypeDefs import Control.Newtype newtype Extensions = Extensions XmlTrees deriving (Eq, Show) extensions :: XmlTrees -> Extensions extensions = Extensions runExtensions :: Extensions -> XmlTrees runExtensions (Extensions t) = t instance XmlPickler Extensions where xpickle = xpWrap (Extensions, \(Extensions t) -> t) xpTrees instance Newtype Extensions XmlTrees where pack = Extensions unpack (Extensions x) = x