hsqml-0.2.0.2: Haskell binding for Qt Quick

Safe HaskellNone

Graphics.QML.Marshal

Description

Type classs and instances for marshalling values between Haskell and QML.

Synopsis

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.

Methods

marshaller :: Marshaller t (MarshalMode t)

Yields the Marshaller for the type t.

class MarshalBase m => MarshalToHs m

Class for MarshalModes which support marshalling QML-to-Haskell.

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.

class MarshalBase m => MarshalFromObj m

Class for MarshalModes which support marshalling QML-to-Haskell in contexts specific to objects.

class MarshalBase m => MarshalToObj m

Class for MarshalModes which support marshalling Haskell-to-QML in contexts specific to objects.

Instances

data ValFnRetVoid

MarshalMode for void in method returns.

data ValObjToOnly a

MarshalMode for object types, operating only in the QML-to-Haskell direction.

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.