A module providing the functionality for writing a Ruby object to and reading it from a file (or string).
Writes obj to a file recursively.
Some objects may not be writeable to a file, such as in instances of File or MatchData, or with objects that define unusual methods. When attempting to write such objects to a file, a TypeError will occur.
port specifies an instance of IO (or a subclass). In this case, returns port. When omitted, dump returns the object's dump as a string.
When limit is specified, no objects linked at or deeper than limit can be dumped (The default is 100 levels.) When limit is negative, no depth checking is performed.
Reads marshal data from port (i.e., the string output from Marshal.dump) and creates an object with the same state as the original object. port specifies a string or an instance of IO (or a subclass).