Class: Object
- Inherits:
- BasicObject
- Defined in:
- lib/cuboid/ruby/object.rb
Overview
Overloads the Object class providing a #deep_clone method.
Instance Method Summary collapse
-
#deep_clone ⇒ Object
Deep-clones self using a Marshal dump-load.
- #rpc_clone ⇒ Object
- #to_rpc_data_or_self ⇒ Object
Instance Method Details
#deep_clone ⇒ Object
Deep-clones self using a Marshal dump-load.
10 11 12 |
# File 'lib/cuboid/ruby/object.rb', line 10 def deep_clone Marshal.load( Marshal.dump( self ) ) end |
#rpc_clone ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/cuboid/ruby/object.rb', line 14 def rpc_clone if self.class.respond_to?( :from_rpc_data ) self.class.from_rpc_data( Cuboid::RPC::Serializer.serializer.load( Cuboid::RPC::Serializer.serializer.dump( to_rpc_data ) ) ) else Cuboid::RPC::Serializer.serializer.load( Cuboid::RPC::Serializer.serializer.dump( self ) ) end end |
#to_rpc_data_or_self ⇒ Object
28 29 30 |
# File 'lib/cuboid/ruby/object.rb', line 28 def to_rpc_data_or_self respond_to?( :to_rpc_data ) ? to_rpc_data : self end |