Your IP : 216.73.216.213
B
���]�8 � @ s� d dl mZ d dlmZ d dlZd dlZd dlZd dlZd dlm Z e
Zyd dlZd dlm
Z W n ek
r| d ZdZY nX G dd� de�Zddejd fd d
�Zdd� Zd
d� Zdd� Zddd�Zdd� Zddd�Zddd�ZdS )� )�
generators)�bisect_rightN)�
ModuleType)�
PyCF_ONLY_ASTc @ s� e Zd ZdZdZdd� Zdd� Zdd� Zd d
� Zdd� Z d
d� Z
d%dd�Zd&dd�Zd'dd�Z
d(dd�Zd)dd�Zd*dd�Zd d!� Zdd"ejddfd#d$�ZdS )+�SourcezY a immutable object holding a source code fragment,
possibly deindenting it.
r c O s� g | _ }|�dd�}|�dd�}x�|D ]�}|s4g }t|t�rF|j }njt|ttf�rddd� |D �}nLt|tjj�r�|� d�}|r�x.|r�|d �
� r�P |�� q�W nt||d�j }|r�t
|�}|�|� q(W d S ) N�deindentT�rstripc S s g | ]}|� d ��qS )�
)r )�.0�x� r �@/opt/alt/python37/lib/python3.7/site-packages/py/_code/source.py�
<listcomp>! s z#Source.__init__.<locals>.<listcomp>r ���)r )�lines�get�
isinstancer �tuple�list�py�builtinZ_basestring�split�strip�pop� getsourcer �extend)�self�parts�kwargsr �der �partZ partlinesr r r
�__init__ s*
zSource.__init__c C s<