module TextShow.Control.Monad.ST (showbST) where
import Control.Monad.ST (ST)
import Data.Text.Lazy.Builder (Builder)
import TextShow.Classes (TextShow(..), TextShow1(..), TextShow2(..))
#include "inline.h"
showbST :: ST s a -> Builder
showbST = showb
instance TextShow (ST s a) where
    showb = liftShowbPrec undefined undefined 0
    INLINE_INST_FUN(showb)
instance TextShow1 (ST s) where
    liftShowbPrec = liftShowbPrec2 undefined undefined
    INLINE_INST_FUN(liftShowbPrec)
instance TextShow2 ST where
    liftShowbPrec2 _ _ _ _ _ _ = "<<ST action>>"
    INLINE_INST_FUN(liftShowbPrec2)