| 
      |||
| Previous < | 
          Contents ^
           | 
        
          Next >
           | 
      |
| module Marshal | 
IO, or
  singleton objects, a TypeError will be raised.  
  If your class has special serialization needs (for example, if you want
  to serialize in some specific format), or if it contains objects
  that would otherwise not be serializable, you can implement your own
  serialization strategy by defining two methods, _dump and
  _load:    
  | Method Type | Signature | Returns | ||||||
| Instance | _dump(aDepth) | Returns a String
         | 
||||||
| Class | _load(aString) | Returns a reconstituted Object
         | 
||||||
_dump should
  return a String object containing all the information necessary
  to reconstitute objects of this class and all referenced objects up
  to a maximum depth of aDepth (a value of -1 should disable
  depth checking). The class method _load
  should take a String and return an
  object of this class.
  | class methods | ||
| dump | dump( anObject [, anIO ] , limit=--1 ) -> anIO | 
      Serializes anObject and all descendent objects. If
      anIO is specified, the serialized data will be written to
      it, otherwise the data will be returned as a String. If
      limit is specified, the traversal of subobjects will be
      limited to that depth. If limit is negative, no checking
      of depth will be performed.
 
  | 
      
| load | load( from [, aProc ] ) -> anObject | 
      Returns the result of converting the serialized data in
      from into a Ruby object (possibly with associated
      subordinate objects). from may be either an instance of
      IO or an object that responds to to_str. If
      proc is specified, it will be passed each object as it 
      is deserialized.
       | 
      
| restore | restore( from [, aProc ] ) -> anObject | 
      A synonym for 
          Marshal::load
        .
       | 
    
| Previous < | 
          Contents ^
           | 
        
          Next >
           |