git.iko.soy/distributed-process
on master help sign in
Add Closure static serialization dictionary.
commitc0efe96161abbc7a192223a05cd1ab6f55281fa4 authorMathieu Boespflug <m@tweag.io> dateSat 29 Nov 2014, 12:31 (12 years ago) parenteae0a41
2 files changed+8
src/Control/Distributed/Process/Closure.hs+2 src/Control/Distributed/Process/Internal/Closure/BuiltIn.hs+6
src/Control/Distributed/Process/Closure.hs+2
@@ -163,6 +163,7 @@ module Control.Distributed.Process.Closure
163163 , sdictUnit
164164 , sdictProcessId
165165 , sdictSendPort
166+ , sdictClosure
166167 -- * The CP type and associated combinators
167168 , CP
168169 , idCP
@@ -203,6 +204,7 @@ import Control.Distributed.Process.Internal.Closure.BuiltIn
203204 , sdictUnit
204205 , sdictProcessId
205206 , sdictSendPort
207+ , sdictClosure
206208 -- The CP type and associated combinators
207209 , CP
208210 , idCP
src/Control/Distributed/Process/Internal/Closure/BuiltIn.hs+6
@@ -8,6 +8,7 @@ module Control.Distributed.Process.Internal.Closure.BuiltIn
88 , sdictUnit
99 , sdictProcessId
1010 , sdictSendPort
11+ , sdictClosure
1112 -- * Some static values
1213 , sndStatic
1314 -- * The CP type and associated combinators
@@ -82,6 +83,7 @@ remoteTable =
8283 . registerStatic "$sdictUnit" (toDynamic (SerializableDict :: SerializableDict ()))
8384 . registerStatic "$sdictProcessId" (toDynamic (SerializableDict :: SerializableDict ProcessId))
8485 . registerStatic "$sdictSendPort_" (toDynamic (sdictSendPort_ :: SerializableDict ANY -> SerializableDict (SendPort ANY)))
86+ . registerStatic "$sdictClosure" (toDynamic (SerializableDict :: SerializableDict (Closure ANY)))
8587 . registerStatic "$returnProcess" (toDynamic (return :: ANY -> Process ANY))
8688 . registerStatic "$seqProcess" (toDynamic ((>>) :: Process ANY1 -> Process ANY2 -> Process ANY2))
8789 . registerStatic "$bindProcess" (toDynamic ((>>=) :: Process ANY1 -> (ANY1 -> Process ANY2) -> Process ANY2))
@@ -144,6 +146,10 @@ sdictSendPort :: Typeable a
144146 => Static (SerializableDict a) -> Static (SerializableDict (SendPort a))
145147sdictSendPort = staticApply (staticLabel "$sdictSendPort_")
146148
149+-- | Serialization dictionary for 'Closure'.
150+sdictClosure :: Typeable a => Static (SerializableDict (Closure a))
151+sdictClosure = staticLabel "$sdictClosure"
152+
147153--------------------------------------------------------------------------------
148154-- Static values --
149155--------------------------------------------------------------------------------