Module Flatten.Serialize
Serialize.py
Overview
Flatten is a library that is useful for serialization of network data.
This module extends flatten by providing a set of functions
(serialize/unserialize) which take a data object, process it by
calling flatten on it, and returning a byte-stream. The corresponding
call unserialize takes a serialized stream as created by serialize,
and reconstructs the object(s) that are contained within.
The functionality of creating a byte-stream from a tuple/string
structure is published under the names freeze/unfreeze, which return
a string object or take one.
Flatten specialities
Flatten serializes the passed in data to a byte-stream which is
basically an abstraction of a bracket language. There are tags ÿ and
þ, which represent a bracket closing and opening, and several other
special tags which represent content. As storage requirements play an
important part when communicating over a network, the storage
requirements are minimalized by switching between different
representations of length bytes (8,16,32-bits), which are signaled in
the stream by corresponding marker bytes.
Copyright
Flatten is copyright (C) 2002-3 by Heiko Wundram
<heiko@asta.uni-saarland.de>.
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library in the file "COPYLEFT"; if
not, write to the Free Software Foundation, Inc., 59 Temple Place,
Suite 330, Boston, MA 02111-1307 USA
Function Summary |
|
asciiSerialize (data,
*args,
**kwargs)
Returns an ASCII representation of the data to serialize, which is
8-bit free (base64 coded). |
|
asciiUnserialize (data,
*args,
**kwargs)
Unserializes an ASCII representation of data which was serialized. |
|
freeze (data)
Takes a string/tuple structure as returned by the flatten function
(but not solely from there), and returns a byte-stream for it. |
|
serialize (data,
*args,
**kwargs)
Serializes the passed in data to a byte-stream. |
|
unfreeze (data)
Takes a byte-stream as returned by the freeze function, and returns a
string/tuple structure which is in a format returned by flatten, and
readable by unflatten. |
|
unserialize (data,
*args,
**kwargs)
Unserializes the passed in data from a byte-stream. |
asciiSerialize(data,
*args,
**kwargs)
Returns an ASCII representation of the data to serialize, which is
8-bit free (base64 coded). Otherwise works just like serialize().
-
|
asciiUnserialize(data,
*args,
**kwargs)
Unserializes an ASCII representation of data which was serialized. The
data must be coded in base64. Otherwise works just like
unserialize().
-
|
freeze(data)
Takes a string/tuple structure as returned by the flatten function
(but not solely from there), and returns a byte-stream for it.
-
|
serialize(data,
*args,
**kwargs)
Serializes the passed in data to a byte-stream. The data is first
flattened by calling the flatten function of the Flatten module, and
then stored by calling the freeze function of this module.
-
|
unfreeze(data)
Takes a byte-stream as returned by the freeze function, and returns a
string/tuple structure which is in a format returned by flatten, and
readable by unflatten.
-
|
unserialize(data,
*args,
**kwargs)
Unserializes the passed in data from a byte-stream. The data is first
unfrozen by calling the unfreeze function of this module, then
unflattened by calling the unflatten function of the Flatten
module.
-
|
__date__
-
- Type:
-
str
- Value:
|
__version__
-
- Type:
-
str
- Value:
|