module TextShow.Data.Tagged (showbTaggedPrecWith) where
import Data.Tagged (Tagged(..))
import TextShow (TextShow(showbPrec), TextShow1(..), TextShow2(..),
Builder, showbPrec1, showbUnaryWith)
#include "inline.h"
showbTaggedPrecWith :: (Int -> b -> Builder) -> Int -> Tagged s b -> Builder
showbTaggedPrecWith sp p (Tagged b) = showbUnaryWith sp "Tagged" p b
instance TextShow b => TextShow (Tagged s b) where
showbPrec = showbPrec1
INLINE_INST_FUN(showbPrec)
instance TextShow1 (Tagged s) where
showbPrecWith = showbTaggedPrecWith
INLINE_INST_FUN(showbPrecWith)
instance TextShow2 Tagged where
showbPrecWith2 _ = showbTaggedPrecWith
INLINE_INST_FUN(showbPrecWith2)