File: //proc/self/root/usr/lib64/python2.7/site-packages/mercurial/thirdparty/attr/_funcs.pyc
�
1�3\c @` s� d d l m Z m Z m Z d d l Z d d l m Z d d l m Z m Z m
Z
d d l m Z e
d e e d � Z e
d e e d � Z d � Z d
� Z d � Z d S( i ( t absolute_importt divisiont print_functionNi ( t iteritems( t NOTHINGt fieldst _obj_setattr( t AttrsAttributeNotFoundErrorc ` s� t | j � } | � } xl| D]d} t | | j � } | d k rY | | | � rY q n | t k rvt | j � r� t | d t d | d | �| | j <q�t | t t
t f � r%| t k r� | j n t
} | g | D]9 }
t |
j � rt |
d t d | d | �n |
^ q� � | | j <q�t | t � rf| � � � f d � t
| � D� � | | j <q�| | | j <q | | | j <q W| S( s�
Return the ``attrs`` attribute values of *inst* as a dict.
Optionally recurse into other ``attrs``-decorated classes.
:param inst: Instance of an ``attrs``-decorated class.
:param bool recurse: Recurse into classes that are also
``attrs``-decorated.
:param callable filter: A callable whose return code deteremines whether an
attribute or element is included (``True``) or dropped (``False``). Is
called with the :class:`attr.Attribute` as the first argument and the
value as the second argument.
:param callable dict_factory: A callable to produce dictionaries from. For
example, to produce ordered dictionaries instead of normal Python
dictionaries, pass in ``collections.OrderedDict``.
:param bool retain_collection_types: Do not convert to ``list`` when
encountering an attribute whose type is ``tuple`` or ``set``. Only
meaningful if ``recurse`` is ``True``.
:rtype: return type of *dict_factory*
:raise attr.exceptions.NotAnAttrsClassError: If *cls* is not an ``attrs``
class.
.. versionadded:: 16.0.0 *dict_factory*
.. versionadded:: 16.1.0 *retain_collection_types*
t recurset filtert dict_factoryc 3` sc | ]Y \ } } t | j � r0 t | d � �n | t | j � rT t | d � �n | f Vq d S( R
N( t hast __class__t asdict( t .0t kkt vv( t df( sF /usr/lib64/python2.7/site-packages/mercurial/thirdparty/attr/_funcs.pys <genexpr>; s N( R R t getattrt namet Nonet TrueR R
t
isinstancet tuplet listt sett dictR ( t instR R R
t retain_collection_typest attrst rvt at vt cft i( ( R sF /usr/lib64/python2.7/site-packages/mercurial/thirdparty/attr/_funcs.pyR
s,
Pc ` s� t | j � } g } | � x�| D]�} t | | j � } | d k r\ | | | � r\ q"