B
    kG_                 @   sh   d dl Z d dlZdd e jD ZdddgZdZdd	 Zd
d ZdddZG dd dZ	G dd dZ
dS )    Nc             C   s   g | ]}t t|qS  )getattr
__future__).0Zfnamer   r   (/opt/hscpipe/8.4/lib/python3.7/codeop.py
<listcomp>>   s   r   compile_commandCompileCommandCompileri   c             C   sX  x8| dD ]}| }|r|d dkrP qW |dkr:d}d  } }}d  } }	}
y| |||}W n" tk
r } zW d d }~X Y nX t  td y| |d ||}	W n& tk
r } z|}W d d }~X Y nX y| |d ||}
W n( tk
r } z|}W d d }~X Y nX W d Q R X z*|r*|S |	sFt|t|krF|W d d  }}X d S )N
r   #evalpassignorez

)splitstripSyntaxErrorwarningscatch_warningssimplefilterrepr)compilersourcefilenamesymbollineerrZerr1Zerr2codecode1code2er   r   r   _maybe_compileE   s8    

 r!   c             C   s   t | ||tS )N)compilePyCF_DONT_IMPLY_DEDENT)r   r   r   r   r   r   _compilel   s    r$   <input>singlec             C   s   t t| ||S )N)r!   r$   )r   r   r   r   r   r   r   o   s    c               @   s   e Zd Zdd Zdd ZdS )r	   c             C   s
   t | _d S )N)r#   flags)selfr   r   r   __init__   s    zCompile.__init__c             C   s@   t |||| jd}x(tD ] }|j|j@ r|  j|jO  _qW |S )N   )r"   r'   	_featuresco_flagsZcompiler_flag)r(   r   r   r   ZcodeobZfeaturer   r   r   __call__   s
    
zCompile.__call__N)__name__
__module____qualname__r)   r-   r   r   r   r   r	      s   c               @   s   e Zd Zdd ZdddZdS )	r
   c             C   s   t  | _d S )N)r	   r   )r(   r   r   r   r)      s    zCommandCompiler.__init__<input>r&   c             C   s   t | j|||S )N)r!   r   )r(   r   r   r   r   r   r   r-      s    zCommandCompiler.__call__N)r1   r&   )r.   r/   r0   r)   r-   r   r   r   r   r
      s   )r%   r&   )r   r   Zall_feature_namesr+   __all__r#   r!   r$   r   r	   r
   r   r   r   r   <module>;   s   

'
