Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
A structure that provides information to the type system which is used specifically for managing interface types.
- newtype InterfaceInfo = InterfaceInfo (ForeignPtr InterfaceInfo)
- newZeroInterfaceInfo :: MonadIO m => m InterfaceInfo
- noInterfaceInfo :: Maybe InterfaceInfo
- interfaceInfoClearInterfaceData :: MonadIO m => InterfaceInfo -> m ()
- interfaceInfoInterfaceData :: AttrLabelProxy "interfaceData"
- interfaceInfoReadInterfaceData :: MonadIO m => InterfaceInfo -> m (Ptr ())
- interfaceInfoWriteInterfaceData :: MonadIO m => InterfaceInfo -> Ptr () -> m ()
Exported types
newtype InterfaceInfo Source
(~) AttrOpTag tag AttrSet => Constructible InterfaceInfo tag | |
((~) * info (ResolveInterfaceInfoMethod t InterfaceInfo), MethodInfo * info InterfaceInfo p) => IsLabelProxy t (InterfaceInfo -> p) | |
type AttributeList InterfaceInfo |
newZeroInterfaceInfo :: MonadIO m => m InterfaceInfo Source
Construct a InterfaceInfo
struct initialized to zero.
Properties
InterfaceData
interfaceInfoClearInterfaceData :: MonadIO m => InterfaceInfo -> m () Source
interfaceInfoInterfaceData :: AttrLabelProxy "interfaceData" Source
interfaceInfoReadInterfaceData :: MonadIO m => InterfaceInfo -> m (Ptr ()) Source
interfaceInfoWriteInterfaceData :: MonadIO m => InterfaceInfo -> Ptr () -> m () Source