| Safe Haskell | None |
|---|
Graphics.QML.Marshal
Description
Type classs and instances for marshalling values between Haskell and QML.
- class Marshal t where
- type MarshalMode t
- marshaller :: Marshaller t (MarshalMode t)
- class MarshalBase m => MarshalToHs m
- class MarshalBase m => MarshalToValRaw m
- class MarshalToValRaw m => MarshalToVal m
- class MarshalBase m => MarshalFromObj m
- class MarshalBase m => MarshalToObj m
- data ValBidi
- data ValFnRetVoid
- data ValObjBidi a
- data ValObjToOnly a
- type ThisObj tt = ModeObj (MarshalMode tt)
- data family Marshaller t m
Documentation
class Marshal t where
The class Marshal allows Haskell values to be marshalled to and from the
QML environment.
Associated Types
type MarshalMode t
The MarshalMode associated type parameter specifies the type of
marshalling functionality offered by the instance.
class MarshalBase m => MarshalToHs m
Class for MarshalModes which support marshalling QML-to-Haskell.
Instances
class MarshalBase m => MarshalToValRaw m
Class for MarshalModes which support marshalling Haskell-to-QML.
class MarshalToValRaw m => MarshalToVal m
Class for MarshalModes which support marshalling Haskell-to-QML,
excluding the return of void from methods.
Instances
class MarshalBase m => MarshalFromObj m
Class for MarshalModes which support marshalling QML-to-Haskell
in contexts specific to objects.
Instances
class MarshalBase m => MarshalToObj m
Class for MarshalModes which support marshalling Haskell-to-QML
in contexts specific to objects.
Instances
data ValBidi
MarshalMode for built-in data types.
data ValObjBidi a
MarshalMode for object types.
Instances
| MarshalToVal (ValObjBidi a) | |
| MarshalToValRaw (ValObjBidi a) | |
| MarshalToHs (ValObjBidi a) | |
| MarshalToObj (ValObjBidi a) | |
| MarshalFromObj (ValObjBidi a) |
data ValObjToOnly a
MarshalMode for object types, operating only in the QML-to-Haskell
direction.
Instances
type ThisObj tt = ModeObj (MarshalMode tt)
Type function yielding the object type speficied by a given marshallable
type tt.
data family Marshaller t m
Encapsulates the functionality to needed to implement an instance of
Marshal so that such instances can be defined without access to
implementation details.