git.iko.soy/distributed-process
on master help sign in
Merge pull request #158 from tweag/closure-closure

Serialization dictionary for Closure.

commit7e58aa9ce636c5ec471f005462b8a327459dd0b9 authorTim Watson <watson.timothy@gmail.com> dateTue 2 Dec 2014, 08:26 (12 years ago) parentfc0a1ccd38eb3a
2 files changed+15
src/Control/Distributed/Process/Closure.hs+4 src/Control/Distributed/Process/Internal/Closure/BuiltIn.hs+11
src/Control/Distributed/Process/Closure.hs+4
@@ -163,6 +163,8 @@ module Control.Distributed.Process.Closure
163163 , sdictUnit
164164 , sdictProcessId
165165 , sdictSendPort
166+ , sdictStatic
167+ , sdictClosure
166168 -- * The CP type and associated combinators
167169 , CP
168170 , idCP
@@ -203,6 +205,8 @@ import Control.Distributed.Process.Internal.Closure.BuiltIn
203205 , sdictUnit
204206 , sdictProcessId
205207 , sdictSendPort
208+ , sdictStatic
209+ , sdictClosure
206210 -- The CP type and associated combinators
207211 , CP
208212 , idCP
src/Control/Distributed/Process/Internal/Closure/BuiltIn.hs+11
@@ -8,6 +8,8 @@ module Control.Distributed.Process.Internal.Closure.BuiltIn
88 , sdictUnit
99 , sdictProcessId
1010 , sdictSendPort
11+ , sdictStatic
12+ , sdictClosure
1113 -- * Some static values
1214 , sndStatic
1315 -- * The CP type and associated combinators
@@ -82,6 +84,7 @@ remoteTable =
8284 . registerStatic "$sdictUnit" (toDynamic (SerializableDict :: SerializableDict ()))
8385 . registerStatic "$sdictProcessId" (toDynamic (SerializableDict :: SerializableDict ProcessId))
8486 . registerStatic "$sdictSendPort_" (toDynamic (sdictSendPort_ :: SerializableDict ANY -> SerializableDict (SendPort ANY)))
87+ . registerStatic "$sdictClosure" (toDynamic (SerializableDict :: SerializableDict (Closure ANY)))
8588 . registerStatic "$returnProcess" (toDynamic (return :: ANY -> Process ANY))
8689 . registerStatic "$seqProcess" (toDynamic ((>>) :: Process ANY1 -> Process ANY2 -> Process ANY2))
8790 . registerStatic "$bindProcess" (toDynamic ((>>=) :: Process ANY1 -> (ANY1 -> Process ANY2) -> Process ANY2))
@@ -144,6 +147,14 @@ sdictSendPort :: Typeable a
144147 => Static (SerializableDict a) -> Static (SerializableDict (SendPort a))
145148sdictSendPort = staticApply (staticLabel "$sdictSendPort_")
146149
150+-- | Serialization dictionary for 'Static'.
151+sdictStatic :: Typeable a => Static (SerializableDict (Static a))
152+sdictStatic = staticLabel "$sdictStatic"
153+
154+-- | Serialization dictionary for 'Closure'.
155+sdictClosure :: Typeable a => Static (SerializableDict (Closure a))
156+sdictClosure = staticLabel "$sdictClosure"
157+
147158--------------------------------------------------------------------------------
148159-- Static values --
149160--------------------------------------------------------------------------------