{-# OPTIONS_GHC -fno-warn-orphans #-} module Text.Blaze.XML where import Data.Function ((.)) import Hdoc.XML import Prelude (Double) import Text.Blaze import Text.Blaze.Utils import Text.Show (Show(..)) import qualified Language.Symantic.XML as XML import Hdoc.Utils (Nat(..), Nat1(..)) -- * Type 'XML' type XML = Markup instance Attrify URL where attrify (URL a) = attrify a instance Attrify Nat where attrify (Nat a) = attrify a instance Attrify Nat1 where attrify (Nat1 a) = attrify a instance Attrify Ident where attrify (Ident i) = attrify i instance Attrify Double where attrify = attrify . show instance Attrify XML.NCName where attrify = attrify . show . XML.unNCName instance MayAttr URL where mayAttr a (URL t) = mayAttr a t instance MayAttr Ident where mayAttr a (Ident t) = mayAttr a t instance MayAttr Nat where mayAttr a (Nat t) = mayAttr a t instance MayAttr Nat1 where mayAttr a (Nat1 t) = mayAttr a t