#include "HsBaseConfig.h"
module TextShow.System.Posix.Types (
      showbFdPrec
#if defined(HTYPE_DEV_T)
    , showbCDev
#endif
#if defined(HTYPE_INO_T)
    , showbCIno
#endif
#if defined(HTYPE_MODE_T)
    , showbCMode
#endif
#if defined(HTYPE_OFF_T)
    , showbCOffPrec
#endif
#if defined(HTYPE_PID_T)
    , showbCPidPrec
#endif
#if defined(HTYPE_SSIZE_T)
    , showbCSsizePrec
#endif
#if defined(HTYPE_GID_T)
    , showbCGid
#endif
#if defined(HTYPE_NLINK_T)
    , showbCNlink
#endif
#if defined(HTYPE_UID_T)
    , showbCUid
#endif
#if defined(HTYPE_CC_T)
    , showbCCc
#endif
#if defined(HTYPE_SPEED_T)
    , showbCSpeed
#endif
#if defined(HTYPE_TCFLAG_T)
    , showbCTcflag
#endif
#if defined(HTYPE_RLIM_T)
    , showbCRLim
#endif
    ) where
import Data.Text.Lazy.Builder (Builder)
import System.Posix.Types
import TextShow.Classes (TextShow(..))
import TextShow.Data.Integral ()
import TextShow.Foreign.C.Types ()
#if !(MIN_VERSION_base(4,5,0))
import Data.Int
import Data.Word
import Unsafe.Coerce (unsafeCoerce)
# include "HsBaseConfig.h"
# include "inline.h"
#endif
#if defined(HTYPE_DEV_T)
showbCDev :: CDev -> Builder
# if MIN_VERSION_base(4,5,0)
showbCDev = showb
# else
showbCDev = unsafeCoerce (showb :: HTYPE_DEV_T -> Builder)
# endif
#endif
#if defined(HTYPE_INO_T)
showbCIno :: CIno -> Builder
# if MIN_VERSION_base(4,5,0)
showbCIno = showb
# else
showbCIno = unsafeCoerce (showb :: HTYPE_INO_T -> Builder)
# endif
#endif
#if defined(HTYPE_MODE_T)
showbCMode :: CMode -> Builder
# if MIN_VERSION_base(4,5,0)
showbCMode = showb
# else
showbCMode = unsafeCoerce (showb :: HTYPE_MODE_T -> Builder)
# endif
#endif
#if defined(HTYPE_OFF_T)
showbCOffPrec :: Int -> COff -> Builder
# if MIN_VERSION_base(4,5,0)
showbCOffPrec = showbPrec
# else
showbCOffPrec = unsafeCoerce (showbPrec :: Int -> HTYPE_OFF_T -> Builder)
# endif
#endif
#if defined(HTYPE_PID_T)
showbCPidPrec :: Int -> CPid -> Builder
# if MIN_VERSION_base(4,5,0)
showbCPidPrec = showbPrec
# else
showbCPidPrec = unsafeCoerce (showbPrec :: Int -> HTYPE_PID_T -> Builder)
# endif
#endif
#if defined(HTYPE_SSIZE_T)
showbCSsizePrec :: Int -> CSsize -> Builder
# if MIN_VERSION_base(4,5,0)
showbCSsizePrec = showbPrec
# else
showbCSsizePrec = unsafeCoerce (showbPrec :: Int -> HTYPE_SSIZE_T -> Builder)
# endif
#endif
#if defined(HTYPE_GID_T)
showbCGid :: CGid -> Builder
# if MIN_VERSION_base(4,5,0)
showbCGid = showb
# else
showbCGid = unsafeCoerce (showb :: HTYPE_GID_T -> Builder)
# endif
#endif
#if defined(HTYPE_NLINK_T)
showbCNlink :: CNlink -> Builder
# if MIN_VERSION_base(4,5,0)
showbCNlink = showb
# else
showbCNlink = unsafeCoerce (showb :: HTYPE_NLINK_T -> Builder)
# endif
#endif
#if defined(HTYPE_UID_T)
showbCUid :: CUid -> Builder
# if MIN_VERSION_base(4,5,0)
showbCUid = showb
# else
showbCUid = unsafeCoerce (showb :: HTYPE_UID_T -> Builder)
# endif
#endif
#if defined(HTYPE_CC_T)
showbCCc :: CCc -> Builder
# if MIN_VERSION_base(4,5,0)
showbCCc = showb
# else
showbCCc = unsafeCoerce (showb :: HTYPE_CC_T -> Builder)
# endif
#endif
#if defined(HTYPE_SPEED_T)
showbCSpeed :: CSpeed -> Builder
# if MIN_VERSION_base(4,5,0)
showbCSpeed = showb
# else
showbCSpeed = unsafeCoerce (showb :: HTYPE_SPEED_T -> Builder)
# endif
#endif
#if defined(HTYPE_TCFLAG_T)
showbCTcflag :: CTcflag -> Builder
# if MIN_VERSION_base(4,5,0)
showbCTcflag = showb
# else
showbCTcflag = unsafeCoerce (showb :: HTYPE_TCFLAG_T -> Builder)
# endif
#endif
#if defined(HTYPE_RLIM_T)
showbCRLim :: CRLim -> Builder
# if MIN_VERSION_base(4,5,0)
showbCRLim = showb
# else
showbCRLim = unsafeCoerce (showb :: HTYPE_RLIM_T -> Builder)
# endif
#endif
showbFdPrec :: Int -> Fd -> Builder
showbFdPrec = showbPrec
#if MIN_VERSION_base(4,5,0)
# if defined(HTYPE_DEV_T)
deriving instance TextShow CDev
# endif
# if defined(HTYPE_INO_T)
deriving instance TextShow CIno
# endif
# if defined(HTYPE_MODE_T)
deriving instance TextShow CMode
# endif
# if defined(HTYPE_OFF_T)
deriving instance TextShow COff
# endif
# if defined(HTYPE_PID_T)
deriving instance TextShow CPid
# endif
# if defined(HTYPE_SSIZE_T)
deriving instance TextShow CSsize
# endif
# if defined(HTYPE_GID_T)
deriving instance TextShow CGid
# endif
# if defined(HTYPE_NLINK_T)
deriving instance TextShow CNlink
# endif
# if defined(HTYPE_UID_T)
deriving instance TextShow CUid
# endif
# if defined(HTYPE_CC_T)
deriving instance TextShow CCc
# endif
# if defined(HTYPE_SPEED_T)
deriving instance TextShow CSpeed
# endif
# if defined(HTYPE_TCFLAG_T)
deriving instance TextShow CTcflag
# endif
# if defined(HTYPE_RLIM_T)
deriving instance TextShow CRLim
# endif
#else
# if defined(HTYPE_DEV_T)
instance TextShow CDev where
    showb = showbCDev
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_INO_T)
instance TextShow CIno where
    showb = showbCIno
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_MODE_T)
instance TextShow CMode where
    showb = showbCMode
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_OFF_T)
instance TextShow COff where
    showbPrec = showbCOffPrec
    INLINE_INST_FUN(showbPrec)
# endif
# if defined(HTYPE_PID_T)
instance TextShow CPid where
    showbPrec = showbCPidPrec
    INLINE_INST_FUN(showbPrec)
# endif
# if defined(HTYPE_SSIZE_T)
instance TextShow CSsize where
    showbPrec = showbCSsizePrec
    INLINE_INST_FUN(showbPrec)
# endif
# if defined(HTYPE_GID_T)
instance TextShow CGid where
    showb = showbCGid
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_NLINK_T)
instance TextShow CNlink where
    showb = showbCNlink
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_UID_T)
instance TextShow CUid where
    showb = showbCUid
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_CC_T)
instance TextShow CCc where
    showb = showbCCc
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_SPEED_T)
instance TextShow CSpeed where
    showb = showbCSpeed
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_TCFLAG_T)
instance TextShow CTcflag where
    showb = showbCTcflag
    INLINE_INST_FUN(showb)
# endif
# if defined(HTYPE_RLIM_T)
instance TextShow CRLim where
    showb = showbCRLim
    INLINE_INST_FUN(showb)
# endif
#endif
deriving instance TextShow Fd