@@ -26,6 +26,7 @@ module Control.Distributed.Process.Internal.Primitives
26 , unsafeUSend
26 , unsafeUSend
27 , unsafeSendChan
27 , unsafeSendChan
28 , unsafeNSend
28 , unsafeNSend
29 -- * Advanced messaging
30 -- * Advanced messaging
31 , receiveWait
32 , receiveWait
@@ -1184,6 +1185,13 @@ nsendRemote :: Serializable a => NodeId -> String -> a -> Process ()
1184nsendRemote nid label msg =
1185nsendRemote nid label msg =
1185 sendCtrlMsg (Just nid) (NamedSend label (createMessage msg))
1186 sendCtrlMsg (Just nid) (NamedSend label (createMessage msg))
1188+-- | Named send to a process in a remote registry (asynchronous)
1189+-- This function makes /no/ attempt to serialize and (in the case when the
1190+-- destination process resides on the same local node) therefore ensure that
1191+-- the payload is fully evaluated before it is delivered.
1192+unsafeNSendRemote :: Serializable a => NodeId -> String -> a -> Process ()
1193+unsafeNSendRemote = Unsafe.nsendRemote
1187--------------------------------------------------------------------------------
1195--------------------------------------------------------------------------------
1188-- Closures --
1196-- Closures --
1189--------------------------------------------------------------------------------
1197--------------------------------------------------------------------------------