@@ -86,6 +86,7 @@ module Control.Distributed.Process.Internal.Types
86import System.Mem.Weak (Weak)
86import System.Mem.Weak (Weak)
87import Data.Map (Map)
87import Data.Map (Map)
88import Data.Int (Int32)
88import Data.Int (Int32)
89+import Data.Data (Data)
89import Data.Typeable (Typeable, typeOf)
90import Data.Typeable (Typeable, typeOf)
90import Data.Binary (Binary(put, get), putWord8, getWord8, encode)
91import Data.Binary (Binary(put, get), putWord8, getWord8, encode)
91import qualified Data.ByteString as BSS (ByteString, concat, copy)
92import qualified Data.ByteString as BSS (ByteString, concat, copy)
@@ -133,7 +134,7 @@ import GHC.Generics
134-- | Node identifier
135-- | Node identifier
135newtype NodeId = NodeId { nodeAddress :: NT.EndPointAddress }
136newtype NodeId = NodeId { nodeAddress :: NT.EndPointAddress }
136− deriving (Eq, Ord, Typeable, Generic)
137+ deriving (Eq, Ord, Typeable, Data, Generic)
137instance Binary NodeId where
138instance Binary NodeId where
138instance NFData NodeId
139instance NFData NodeId
139instance Hashable NodeId where
140instance Hashable NodeId where
@@ -146,7 +147,7 @@ data LocalProcessId = LocalProcessId
146 { lpidUnique :: {-# UNPACK #-} !Int32
147 { lpidUnique :: {-# UNPACK #-} !Int32
147 , lpidCounter :: {-# UNPACK #-} !Int32
148 , lpidCounter :: {-# UNPACK #-} !Int32
149− deriving (Eq, Ord, Typeable, Generic, Show)
150+ deriving (Eq, Ord, Typeable, Data, Generic, Show)
151instance Hashable LocalProcessId where
152instance Hashable LocalProcessId where
@@ -157,7 +158,7 @@ data ProcessId = ProcessId
157 -- | Node-local identifier for the process
158 -- | Node-local identifier for the process
158 , processLocalId :: {-# UNPACK #-} !LocalProcessId
159 , processLocalId :: {-# UNPACK #-} !LocalProcessId
160− deriving (Eq, Ord, Typeable, Generic)
161+ deriving (Eq, Ord, Typeable, Data, Generic)
162instance Binary ProcessId where
163instance Binary ProcessId where
163instance NFData ProcessId where
164instance NFData ProcessId where