{-# LANGUAGE CPP #-}

module Network.Mux.TCPInfo
  ( StructTCPInfo (..)
#if os_HOST_linux
  , SocketOption (TCPInfoSocketOption)
#endif
  ) where

#if os_HOST_linux
import           Network.Mux.TCPInfo.Linux
#else
data StructTCPInfo = TCPInfoUnavailable
  deriving (StructTCPInfo -> StructTCPInfo -> Bool
(StructTCPInfo -> StructTCPInfo -> Bool)
-> (StructTCPInfo -> StructTCPInfo -> Bool) -> Eq StructTCPInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StructTCPInfo -> StructTCPInfo -> Bool
$c/= :: StructTCPInfo -> StructTCPInfo -> Bool
== :: StructTCPInfo -> StructTCPInfo -> Bool
$c== :: StructTCPInfo -> StructTCPInfo -> Bool
Eq, Eq StructTCPInfo
Eq StructTCPInfo
-> (StructTCPInfo -> StructTCPInfo -> Ordering)
-> (StructTCPInfo -> StructTCPInfo -> Bool)
-> (StructTCPInfo -> StructTCPInfo -> Bool)
-> (StructTCPInfo -> StructTCPInfo -> Bool)
-> (StructTCPInfo -> StructTCPInfo -> Bool)
-> (StructTCPInfo -> StructTCPInfo -> StructTCPInfo)
-> (StructTCPInfo -> StructTCPInfo -> StructTCPInfo)
-> Ord StructTCPInfo
StructTCPInfo -> StructTCPInfo -> Bool
StructTCPInfo -> StructTCPInfo -> Ordering
StructTCPInfo -> StructTCPInfo -> StructTCPInfo
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: StructTCPInfo -> StructTCPInfo -> StructTCPInfo
$cmin :: StructTCPInfo -> StructTCPInfo -> StructTCPInfo
max :: StructTCPInfo -> StructTCPInfo -> StructTCPInfo
$cmax :: StructTCPInfo -> StructTCPInfo -> StructTCPInfo
>= :: StructTCPInfo -> StructTCPInfo -> Bool
$c>= :: StructTCPInfo -> StructTCPInfo -> Bool
> :: StructTCPInfo -> StructTCPInfo -> Bool
$c> :: StructTCPInfo -> StructTCPInfo -> Bool
<= :: StructTCPInfo -> StructTCPInfo -> Bool
$c<= :: StructTCPInfo -> StructTCPInfo -> Bool
< :: StructTCPInfo -> StructTCPInfo -> Bool
$c< :: StructTCPInfo -> StructTCPInfo -> Bool
compare :: StructTCPInfo -> StructTCPInfo -> Ordering
$ccompare :: StructTCPInfo -> StructTCPInfo -> Ordering
$cp1Ord :: Eq StructTCPInfo
Ord, Int -> StructTCPInfo -> ShowS
[StructTCPInfo] -> ShowS
StructTCPInfo -> String
(Int -> StructTCPInfo -> ShowS)
-> (StructTCPInfo -> String)
-> ([StructTCPInfo] -> ShowS)
-> Show StructTCPInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StructTCPInfo] -> ShowS
$cshowList :: [StructTCPInfo] -> ShowS
show :: StructTCPInfo -> String
$cshow :: StructTCPInfo -> String
showsPrec :: Int -> StructTCPInfo -> ShowS
$cshowsPrec :: Int -> StructTCPInfo -> ShowS
Show)
#endif