{-# LANGUAGE FunctionalDependencies #-} {-# LANGUAGE MultiParamTypeClasses #-} {- | Module : $Header$ Description : ioctl wrapping Copyright : (c) Maciej Piechotka License : BSD3 Stability : none Portability : portable The module provides a type-safe mechanism for ioctl calls. -} module System.IOControl ( IOControl(..), ) where import Foreign import Foreign.C -- | Combines the request with data. class Storable d => IOControl req d | req -> d where -- | Converts request to integer ioctlReq :: req -- ^ The request. Should be lazy in argument. -> CInt -- ^ The request code.