-í
è¶<c       sÉ   d  Z  d k Z y d k l Z Wn  e j
 o d k l Z n Xd d d d g Z d f  d „  ƒ  YZ d e f d „  ƒ  YZ d f  d	 „  ƒ  YZ	 d f  d
 „  ƒ  YZ
 d „  Z e d j o e ƒ  n d S(   sR   Implements (a subset of) Sun XDR -- eXternal Data Representation.

See: RFC 1014

N(   s   StringIOs   Errors   Packers   Unpackers   ConversionErrorc      s)   t  Z d  Z d „  Z d „  Z d „  Z RS(   s¸   Exception class for this module. Use:

    except xdrlib.Error, var:
        # var has the Error instance for the exception

    Public ivars:
        msg -- contains the message

    c    s   | |  _  d  S(   N(   s   msgs   self(   s   selfs   msg(    (    s   /usr/lib/python2.2/xdrlib.pys   __init__ s    c    s   t  |  i ƒ Sd  S(   N(   s   reprs   selfs   msg(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys   __repr__ s    c    s   t  |  i ƒ Sd  S(   N(   s   strs   selfs   msg(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys   __str__ s    (   s   __name__s
   __module__s   __doc__s   __init__s   __repr__s   __str__(    (    (    s   /usr/lib/python2.2/xdrlib.pys   Error s   	 		c      s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    s   /usr/lib/python2.2/xdrlib.pys   ConversionError" s   c      s­   t  Z d  Z d „  Z d „  Z d „  Z e Z d „  Z e Z e Z	 d „  Z
 d „  Z e Z d „  Z d „  Z d	 „  Z e Z d
 „  Z e Z e Z d „  Z d „  Z d „  Z RS(   s0   Pack various data representations into a buffer.c    s   |  i ƒ  d  S(   N(   s   selfs   reset(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys   __init__* s    c    s   t  ƒ  |  _ d  S(   N(   s	   _StringIOs   selfs   _Packer__buf(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys   reset- s    c    s   |  i i ƒ  Sd  S(   N(   s   selfs   _Packer__bufs   getvalue(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys
   get_buffer0 s    c    s    |  i i t i d | ƒ ƒ d  S(   Ns   >L(   s   selfs   _Packer__bufs   writes   structs   packs   x(   s   selfs   x(    (    s   /usr/lib/python2.2/xdrlib.pys	   pack_uint5 s    c    s/   | o |  i i d ƒ n |  i i d ƒ d  S(   Ns      s       (   s   xs   selfs   _Packer__bufs   write(   s   selfs   x(    (    s   /usr/lib/python2.2/xdrlib.pys	   pack_bool; s     c    s*   |  i | d ?d @ƒ |  i | d @ƒ d  S(   Ni    l   ÿÿ (   s   selfs	   pack_uints   x(   s   selfs   x(    (    s   /usr/lib/python2.2/xdrlib.pys   pack_uhyper? s    c    sH   y  |  i i t i d | ƒ ƒ Wn! t i j
 o } t | ‚ n Xd  S(   Ns   >f(	   s   selfs   _Packer__bufs   writes   structs   packs   xs   errors   msgs   ConversionError(   s   selfs   xs   msg(    (    s   /usr/lib/python2.2/xdrlib.pys
   pack_floatE s      c    sH   y  |  i i t i d | ƒ ƒ Wn! t i j
 o } t | ‚ n Xd  S(   Ns   >d(	   s   selfs   _Packer__bufs   writes   structs   packs   xs   errors   msgs   ConversionError(   s   selfs   xs   msg(    (    s   /usr/lib/python2.2/xdrlib.pys   pack_doubleJ s      c    sb   | d j  o t d ‚ n | d d d } | |  } | | t | ƒ d } |  i i | ƒ d  S(   Ni    s    fstring size must be nonnegativei   i   s    (   s   ns
   ValueErrors   ss   datas   lens   selfs   _Packer__bufs   write(   s   selfs   ns   ss   data(    (    s   /usr/lib/python2.2/xdrlib.pys   pack_fstringO s    
c    s-   t  | ƒ } |  i | ƒ |  i | | ƒ d  S(   N(   s   lens   ss   ns   selfs	   pack_uints   pack_fstring(   s   selfs   ss   n(    (    s   /usr/lib/python2.2/xdrlib.pys   pack_stringY s    c    s9   x% | D] } |  i d ƒ | | ƒ q W|  i d ƒ d  S(   Ni   i    (   s   lists   items   selfs	   pack_uints	   pack_item(   s   selfs   lists	   pack_items   item(    (    s   /usr/lib/python2.2/xdrlib.pys	   pack_lista s
     c    s?   t  | ƒ | j o t d ‚ n x | D] } | | ƒ q' Wd  S(   Ns   wrong array size(   s   lens   lists   ns
   ValueErrors   items	   pack_item(   s   selfs   ns   lists	   pack_items   item(    (    s   /usr/lib/python2.2/xdrlib.pys   pack_farrayg s
     c    s0   t  | ƒ } |  i | ƒ |  i | | | ƒ d  S(   N(   s   lens   lists   ns   selfs	   pack_uints   pack_farrays	   pack_item(   s   selfs   lists	   pack_items   n(    (    s   /usr/lib/python2.2/xdrlib.pys
   pack_arraym s    (   s   __name__s
   __module__s   __doc__s   __init__s   resets
   get_buffers   get_bufs	   pack_uints   pack_ints	   pack_enums	   pack_bools   pack_uhypers
   pack_hypers
   pack_floats   pack_doubles   pack_fstrings   pack_fopaques   pack_strings   pack_opaques
   pack_bytess	   pack_lists   pack_farrays
   pack_array(    (    (    s   /usr/lib/python2.2/xdrlib.pys   Packer' s*    												c      sÅ   t  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 e
 Z e
 Z d	 „  Z d
 „  Z d „  Z d „  Z d „  Z e Z d „  Z e Z e Z d „  Z d „  Z d „  Z RS(   s;   Unpacks various data representations from the given buffer.c    s   |  i | ƒ d  S(   N(   s   selfs   resets   data(   s   selfs   data(    (    s   /usr/lib/python2.2/xdrlib.pys   __init__w s    c    s   | |  _ d |  _ d  S(   Ni    (   s   datas   selfs   _Unpacker__bufs   _Unpacker__pos(   s   selfs   data(    (    s   /usr/lib/python2.2/xdrlib.pys   resetz s    	c    s   |  i Sd  S(   N(   s   selfs   _Unpacker__pos(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys   get_position~ s    c    s   | |  _ d  S(   N(   s   positions   selfs   _Unpacker__pos(   s   selfs   position(    (    s   /usr/lib/python2.2/xdrlib.pys   set_position s    c    s   |  i Sd  S(   N(   s   selfs   _Unpacker__buf(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys
   get_buffer„ s    c    s-   |  i t |  i ƒ j  o t d ƒ ‚ n d  S(   Ns   unextracted data remains(   s   selfs   _Unpacker__poss   lens   _Unpacker__bufs   Error(   s   self(    (    s   /usr/lib/python2.2/xdrlib.pys   done‡ s    c    s‰   |  i } | d |  _ } |  i | | !} t | ƒ d j  o
 t ‚ n t i	 d | ƒ d } y t | ƒ SWn t j
 o | Sn Xd  S(   Ni   s   >Li    (   s   selfs   _Unpacker__poss   is   js   _Unpacker__bufs   datas   lens   EOFErrors   structs   unpacks   xs   ints   OverflowError(   s   selfs   is   xs   js   data(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_uint‹ s    	
c    s_   |  i } | d |  _ } |  i | | !} t | ƒ d j  o
 t ‚ n t i	 d | ƒ d Sd  S(   Ni   s   >li    (
   s   selfs   _Unpacker__poss   is   js   _Unpacker__bufs   datas   lens   EOFErrors   structs   unpack(   s   selfs   is   js   data(    (    s   /usr/lib/python2.2/xdrlib.pys
   unpack_int— s    	
c    s.   |  i ƒ  } |  i ƒ  } t | ƒ d >| BSd  S(   Ni    (   s   selfs   unpack_uints   his   los   long(   s   selfs   los   hi(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_uhyper¢ s    c    s/   |  i ƒ  } | d j o | d } n | Sd  S(   Nl            l            (   s   selfs   unpack_uhypers   x(   s   selfs   x(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_hyper§ s    c    s_   |  i } | d |  _ } |  i | | !} t | ƒ d j  o
 t ‚ n t i	 d | ƒ d Sd  S(   Ni   s   >fi    (
   s   selfs   _Unpacker__poss   is   js   _Unpacker__bufs   datas   lens   EOFErrors   structs   unpack(   s   selfs   is   js   data(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_float­ s    	
c    s_   |  i } | d |  _ } |  i | | !} t | ƒ d j  o
 t ‚ n t i	 d | ƒ d Sd  S(   Ni   s   >di    (
   s   selfs   _Unpacker__poss   is   js   _Unpacker__bufs   datas   lens   EOFErrors   structs   unpack(   s   selfs   is   js   data(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_doubleµ s    	
c    sx   | d j  o t d ‚ n |  i } | | d d d } | t |  i ƒ j o
 t ‚ n | |  _ |  i | | | !Sd  S(   Ni    s    fstring size must be nonnegativei   i   (	   s   ns
   ValueErrors   selfs   _Unpacker__poss   is   js   lens   _Unpacker__bufs   EOFError(   s   selfs   ns   is   j(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_fstring½ s    	
	c    s   |  i ƒ  } |  i | ƒ Sd  S(   N(   s   selfs   unpack_uints   ns   unpack_fstring(   s   selfs   n(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_stringÉ s    c    sp   g  } x_ d oW |  i ƒ  } | d j o Pn | d j o t d | ‚ n | ƒ  } | i | ƒ q	 W| Sd  S(   Ni   i    s   0 or 1 expected, got (   s   lists   selfs   unpack_uints   xs   ConversionErrors   unpack_items   items   append(   s   selfs   unpack_items   items   xs   list(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_listÐ s      	c    s5   g  } x$ t | ƒ D] } | i | ƒ  ƒ q W| Sd  S(   N(   s   lists   ranges   ns   is   appends   unpack_item(   s   selfs   ns   unpack_items   is   list(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_farrayÛ s
     c    s    |  i ƒ  } |  i | | ƒ Sd  S(   N(   s   selfs   unpack_uints   ns   unpack_farrays   unpack_item(   s   selfs   unpack_items   n(    (    s   /usr/lib/python2.2/xdrlib.pys   unpack_arrayá s    (   s   __name__s
   __module__s   __doc__s   __init__s   resets   get_positions   set_positions
   get_buffers   dones   unpack_uints
   unpack_ints   unpack_enums   unpack_bools   unpack_uhypers   unpack_hypers   unpack_floats   unpack_doubles   unpack_fstrings   unpack_fopaques   unpack_strings   unpack_opaques   unpack_bytess   unpack_lists   unpack_farrays   unpack_array(    (    (    s   /usr/lib/python2.2/xdrlib.pys   Unpackert s.    													
			c     s¨  t  ƒ  } | i d f f | i t f f | i d f f | i d f f | i d f f | i d f f | i d f f | i	 t
 d ƒ | i f f | i d d d	 d
 g | i f f g	 }	 d g t |	 ƒ } d }  xj |	 D]b \ } } d G|  Gy t | | ƒ d GHWn+ t j
 o } d G| i GHd | |  <n X|  d }  qÔ W| i ƒ  }
 t |
 ƒ } | i f  d „  f | i f  d „  f | i f  d „  f | i f  d „  f | i f  d „  f | i f  d „  f | i f  d „  f | i  | i f d „  f | i! | i f d „  f g	 } d }  x• | D] \ } } } d G|  GyH | |  o4 t | | ƒ } | | ƒ o d p d Gd G| GHn d GHWn! t j
 o } d G| i GHn X|  d }  qWd  S(   Ni	   s   hellol   - f1.8999999999999999s   hello worldi   s   whats   iss   hapnins   doctori   i    s	   pack tests	   succeededs   ConversionError:c    s
   |  d j S(   Ni	   (   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>s    c    s   |  S(   N(   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>s    c    s   |  S(   N(   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>s    c    s
   |  d j S(   Nl   - (   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>s    c    s   d |  j  o
 d j  n S(   Nf1.8899999999999999f1.9099999999999999(   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>s    c    s
   |  d j S(   Ns   hello world(   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>	s    c    s   |  t d ƒ j S(   Ni   (   s   xs   range(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>
s    c    s   |  d d d d g j S(   Ns   whats   iss   hapnins   doctor(   s   x(   s   x(    (    s   /usr/lib/python2.2/xdrlib.pys   <lambda>s    s   unpack tests   faileds   :s   skipping(%   s   Packers   ps	   pack_uints	   pack_bools   Nones   pack_uhypers
   pack_floats   pack_doubles   pack_strings	   pack_lists   ranges
   pack_arrays   packtests   lens   succeedlists   counts   methods   argss   applys   ConversionErrors   vars   msgs
   get_buffers   datas   Unpackers   ups   unpack_uints   unpack_bools   unpack_uhypers   unpack_floats   unpack_doubles   unpack_strings   unpack_lists   unpack_arrays
   unpacktests   preds   x(   s   counts   xs   preds   argss
   unpacktests   ups   ps   succeedlists   vars   packtests   datas   method(    (    s   /usr/lib/python2.2/xdrlib.pys   _testç s:    	« 	´ %	s   __main__(   s   __doc__s   structs	   cStringIOs   StringIOs	   _StringIOs   ImportErrors   __all__s   Errors   ConversionErrors   Packers   Unpackers   _tests   __name__(   s   Packers   ConversionErrors   __all__s   Errors   _tests   Unpackers	   _StringIOs   struct(    (    s   /usr/lib/python2.2/xdrlib.pys   ? s   	Ms	5