clr-marshal-0.2.0.0: Marshaling for the clr

Safe HaskellSafe
LanguageHaskell2010

Clr.Marshal

Documentation

class Marshal a b where Source #

Minimal complete definition

marshal

Methods

marshal :: a -> (b -> IO c) -> IO c Source #

Instances

(~) * a b => Marshal a b Source # 

Methods

marshal :: a -> (b -> IO c) -> IO c Source #

(Marshal a1 b1, Marshal a2 b2) => Marshal (a1, a2) (b1, b2) Source # 

Methods

marshal :: (a1, a2) -> ((b1, b2) -> IO c) -> IO c Source #

(Marshal a1 b1, Marshal a2 b2, Marshal a3 b3) => Marshal (a1, a2, a3) (b1, b2, b3) Source # 

Methods

marshal :: (a1, a2, a3) -> ((b1, b2, b3) -> IO c) -> IO c Source #

(Marshal a1 b1, Marshal a2 b2, Marshal a3 b3, Marshal a4 b4) => Marshal (a1, a2, a3, a4) (b1, b2, b3, b4) Source # 

Methods

marshal :: (a1, a2, a3, a4) -> ((b1, b2, b3, b4) -> IO c) -> IO c Source #

(Marshal a1 b1, Marshal a2 b2, Marshal a3 b3, Marshal a4 b4, Marshal a5 b5) => Marshal (a1, a2, a3, a4, a5) (b1, b2, b3, b4, b5) Source # 

Methods

marshal :: (a1, a2, a3, a4, a5) -> ((b1, b2, b3, b4, b5) -> IO c) -> IO c Source #

class Unmarshal a b where Source #

Minimal complete definition

unmarshal

Methods

unmarshal :: a -> IO b Source #

Instances

(~) * a b => Unmarshal a b Source # 

Methods

unmarshal :: a -> IO b Source #

Unmarshal a b => Unmarshal (IO a) b Source # 

Methods

unmarshal :: IO a -> IO b Source #