Yurttas/PL/SL/python/docs/core-python-programming/doc/152/lib/xdr-unpacker-objects.html
Jump to navigation
Jump to search
12.13.2 Unpacker Objects
The Unpacker class offers the following methods:
- reset (data)
- Resets the string buffer with the given data.
- get_position ()
- Returns the current unpack position in the data buffer.
- set_position (position)
- Sets the data buffer unpack position to position. You should be careful about using get_position() and set_position().
- get_buffer ()
- Returns the current unpack data buffer as a string.
- done ()
- Indicates unpack completion. Raises an Error exception if all of the data has not been unpacked.
In addition, every data type that can be packed with a Packer, can be unpacked with an Unpacker. Unpacking methods are of the form unpack_type(), and take no arguments. They return the unpacked object.
- unpack_float ()
- Unpacks a single-precision floating point number.
- unpack_double ()
- Unpacks a double-precision floating point number, similarly to unpack_float().
In addition, the following methods unpack strings, bytes, and opaque data:
- unpack_fstring (n)
- Unpacks and returns a fixed length string. n is the number of characters expected. Padding with null bytes to guaranteed 4 byte alignment is assumed.
- unpack_fopaque (n)
- Unpacks and returns a fixed length opaque data stream, similarly to unpack_fstring().
- unpack_string ()
- Unpacks and returns a variable length string. The length of the string is first unpacked as an unsigned integer, then the string data is unpacked with unpack_fstring().
- unpack_opaque ()
- Unpacks and returns a variable length opaque data string, similarly to unpack_string().
- unpack_bytes ()
- Unpacks and returns a variable length byte stream, similarly to unpack_string().
The following methods support unpacking arrays and lists:
- unpack_list (unpack_item)
- Unpacks and returns a list of homogeneous items. The list is unpacked one element at a time by first unpacking an unsigned integer flag. If the flag is
1, then the item is unpacked and appended to the list. A flag of0indicates the end of the list. unpack_item is the function that is called to unpack the items.
- unpack_farray (n, unpack_item)
- Unpacks and returns (as a list) a fixed length array of homogeneous items. n is number of list elements to expect in the buffer. As above, unpack_item is the function used to unpack each element.
- unpack_array (unpack_item)
- Unpacks and returns a variable length list of homogeneous items. First, the length of the list is unpacked as an unsigned integer, then each element is unpacked as in unpack_farray() above.
Send comments on this document to python-docs@python.org.