ó
'![c           @   sİ   d  Z  d d l m Z d Z d e f d     YZ d e f d     YZ d e f d	     YZ d
 e f d     YZ d e	 f d     YZ
 d   Z d   Z d   Z d S(   s0    Checks that reversed() receive proper argument i˙˙˙˙(   t   dequei    t   GoodReversedc           B   s   e  Z d  Z d   Z RS(   s    Implements __reversed__ c         C   s   d d d g S(   Ni   i   i   (    (   t   self(    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   __reversed__
   s    (   t   __name__t
   __module__t   __doc__R   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR      s   t   SecondGoodReversedc           B   s    e  Z d  Z d   Z d   Z RS(   s$    Implements __len__ and __getitem__ c         C   s   d S(   Ni   (    (   R   (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   __len__   s    c         C   s   | S(   N(    (   R   t   index(    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   __getitem__   s    (   R   R   R   R   R
   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR      s   	t   BadReversedc           B   s   e  Z d  Z d   Z RS(   s    implements only len() c         C   s   d S(   Ni   (    (   R   (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR      s    (   R   R   R   R   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR      s   t   SecondBadReversedc           B   s   e  Z d  Z d   Z RS(   s    implements only __getitem__ c         C   s   | S(   N(    (   R   R	   (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR
      s    (   R   R   R   R
   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR      s   t   ThirdBadReversedc           B   s   e  Z d  Z RS(   s    dict subclass (   R   R   R   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR      s   c         C   s
   t  |   S(   sY    This can't be infered at this moment,
    make sure we don't have a false positive.
    (   t   reversed(   t   seq(    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   uninferable"   s    c         C   s2  t    } t  d
  } t  d d d g  } t  d  } t  t    } t  i d d 6d d 6 } t  t d d d g   } t  t    } t  t    } t  t    } t  t    } t  t d   } t  t	    } t  d    } t  t
 g    } t  d  } t d d d g  } t  |  j d	   } | S(   s    test function i   i   i   t   at   bid   c           S   s   d  S(   N(   t   None(    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   <lambda>7   s    t   123t   /N(   i   i   i   (   R   R   t   sett   iterR   R   R   R   t   rangeR   R    R   t   split(   t   pathR   (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   test(   s&    	c          C   sH   d d l  m }  d t f d     Y} t |     } t |    | f S(   sA   Don't emit for subclasses of dict, with __reversed__ implemented.i˙˙˙˙(   t   OrderedDictt   Childc           B   s   e  Z d    Z RS(   c         S   s   t  t d   S(   Ni
   (   R   R   (   R   (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR   C   s    (   R   R   R   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyR   B   s   (   t   collectionsR   t   dictR   (   R   R   R   (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   test_dict_ancestor_and_reversed>   s    N(   R   R   R    t   __revision__t   objectR   R   R   R   R    R   R   R   R!   (    (    (    sK   lib/python2.7/site-packages/pylint/test/functional/bad_reversed_sequence.pyt   <module>   s   		