{-# LANGUAGE MultiParamTypeClasses #-}
module Graphics.XHB.Requests.Internal.Instances.Xevie () where
import Graphics.XHB.Gen.Xevie
import Graphics.XHB.Requests.Internal.Classes
import Prelude (fmap)
import Data.Bifunctor (second)
import Graphics.XHB (getReply)

instance RequestWithReply QueryVersion QueryVersionReply where
        requestWithReplyIO (MkQueryVersion a b) conn
          = fmap getReply (queryVersion conn a b)

instance RequestWithReply Start StartReply where
        requestWithReplyIO (MkStart a) conn = fmap getReply (start conn a)

instance RequestWithReply End EndReply where
        requestWithReplyIO (MkEnd a) conn = fmap getReply (end conn a)

instance RequestWithReply Send SendReply where
        requestWithReplyIO (MkSend a b) conn
          = fmap getReply (send conn a b)

instance RequestWithReply SelectInput SelectInputReply where
        requestWithReplyIO (MkSelectInput a) conn
          = fmap getReply (selectInput conn a)