Safe Haskell | None |
---|---|
Language | Haskell98 |
- type RemoteRegister = RemoteTable -> RemoteTable
- class MkTDict a where
- mkStaticVal :: Serializable a => String -> a -> (Static a, RemoteRegister)
- mkClosureValSingle :: forall a b. (Serializable a, Typeable b, MkTDict b) => String -> (a -> b) -> (a -> Closure b, RemoteRegister)
- mkClosureVal :: forall func argTuple result closureFunction. (Curry (argTuple -> Closure result) closureFunction, MkTDict result, Uncurry HTrue argTuple func result, Typeable result, Serializable argTuple, IsFunction func HTrue) => String -> func -> (closureFunction, RemoteRegister)
- call' :: forall a. Serializable a => NodeId -> Closure (Process a) -> Process a
Documentation
type RemoteRegister = RemoteTable -> RemoteTable Source #
A RemoteRegister is a trasformer on a RemoteTable to register additional static values.
mkStaticVal :: Serializable a => String -> a -> (Static a, RemoteRegister) Source #
This takes an explicit name and a value, and produces both a static reference to the name and a RemoteRegister for it.
mkClosureValSingle :: forall a b. (Serializable a, Typeable b, MkTDict b) => String -> (a -> b) -> (a -> Closure b, RemoteRegister) Source #
This takes an explicit name, a function of arity one, and creates a creates a function yielding a closure and a remote register for it.
mkClosureVal :: forall func argTuple result closureFunction. (Curry (argTuple -> Closure result) closureFunction, MkTDict result, Uncurry HTrue argTuple func result, Typeable result, Serializable argTuple, IsFunction func HTrue) => String -> func -> (closureFunction, RemoteRegister) Source #
This takes an explict name, a function of any arity, and creates a function yielding a closure and a remote register for it.