3
Ò»ež  ã               @   s”   d dl Z d dlZd dlZyd dlZW n ek
r<   dZY nX d dlmZ d dlmZ ej	ddƒZ
G dd„ deƒZee deƒZeed	ejƒ jƒZdS )
é    N)Úsix)Úhtml_parserÚOpArgz
opcode argc               @   s   e Zd Zdd„ Zdd„ ZdS )ÚBytecode_compatc             C   s
   || _ d S )N)Úcode)Úselfr   © r   ú;/tmp/pip-build-argcdawy/setuptools/setuptools/py33compat.pyÚ__init__   s    zBytecode_compat.__init__c             c   s¬   t j d| jjƒ}t| jjƒ}d}d}x‚||k r¦|| }|tjkrŒ||d  ||d  d  | }|d7 }|tjkr˜tjd	 }||dƒ }q&nd}|d7 }t	||ƒV  q&W dS )
z>Yield '(op,arg)' pair for each operation in code object 'code'Úbr   é   é   é   é   i   Néÿÿÿÿ)
Úarrayr   Úco_codeÚlenÚdisÚHAVE_ARGUMENTÚEXTENDED_ARGr   Úinteger_typesr   )r   ÚbytesÚeofÚptrÚextended_argÚopÚargZ	long_typer   r   r	   Ú__iter__   s     

 

zBytecode_compat.__iter__N)Ú__name__Ú
__module__Ú__qualname__r
   r   r   r   r   r	   r      s   r   ÚBytecodeÚunescape)r   r   ÚcollectionsÚhtmlÚImportErrorZsetuptools.externr   Zsetuptools.extern.six.movesr   Ú
namedtupler   Úobjectr   Úgetattrr"   Ú
HTMLParserr#   r   r   r   r	   Ú<module>   s   
"