Sindbad~EG File Manager
a
��g�M � @ s d dl Z ed�\ZZZZZe �de je j B �j
Ze �de j�jZ
e �de je jB �jZe �de j�jZe �de j�jZe �de j�jZG d d
� d
e�Ze�ed�d�Ze�d
d� dD �� e�dd� dD �� e�dd� dD �� G dd� d�Zedk�rd dlmZ eddd� dS )� N� z�
^
[ \t]*
(?: while
| else
| def
| return
| assert
| break
| class
| continue
| elif
| try
| except
| raise
| import
| yield
)
\b
z'
[ \t]*
(?: \# \S .* )?
\n
aK
\""" [^"\\]* (?:
(?: \\. | "(?!"") )
[^"\\]*
)*
(?: \""" )?
| " [^"\\\n]* (?: \\. [^"\\\n]* )* "?
| ''' [^'\\]* (?:
(?: \\. | '(?!'') )
[^'\\]*
)*
(?: ''' )?
| ' [^'\\\n]* (?: \\. [^'\\\n]* )* '?
zM
[ \t]*
[^\s#\\] # if we match, m.end()-1 is the interesting char
z_
\s*
(?: return
| break
| continue
| raise
| pass
)
\b
z
[^[\](){}#'"\\]+
c @ s e Zd Zdd� ZdS )�ParseMapc C s dS )N�x � )�self�keyr r �+/usr/local/lib/python3.9/idlelib/pyparse.py�__missing__r s zParseMap.__missing__N)�__name__�
__module__�__qualname__r r r r r r f s r � r c c s | ]}t |�t d �fV qdS )�(N��ord��.0�cr r r � <genexpr>x � r z({[c c s | ]}t |�t d �fV qdS )�)Nr r r r r r y r z)}]c c s | ]}t |�t |�fV qd S �Nr r r r r r z r z"'\
#c @ s| e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� ZdS )�Parserc C s || _ || _d S r )�indentwidth�tabwidth)r r r r r r �__init__ s zParser.__init__c C s || _ d| _d S �Nr )�code�study_level)r �sr r r �set_code� s zParser.set_codec C s� | j d }}t|�}td�D ]\}|�dd|�}|dk r: qz|�dd|�d }t|||�}|rt||�� �st|�� } qz|}q|d u r�t|�}|r�||�� �s�|�� }|S |d }t||� }r�|�� \}}||�s�|}q�|S )Nr z:
r �
� )r �len�range�rfind�_synchre�start�span) r Zis_char_in_stringr �pos�limitZtries�i�mr r r r �find_good_parse_start� s.
zParser.find_good_parse_startc C s |dkr| j |d � | _ d S r )r )r �lor r r �set_lo� s z
Parser.set_loc
C s� | j dkrd S d| _ | j}|�t�}|�dd�}|�dd�}|�dd�}|�dd�}|�dd�}t}d }}dg | _}|j}dt|� }}||k �rd|| } |d }| dkr�q�| dkr�|d }|dkr�||� q�| d kr�|d }q�| d
kr�|r�|d }q�| dk�s| dk�r| }
||d |d
� |
d k�r8|
d }
|}t|
�d }|| }||k �r || } |d }| dk�rx�qP||d || � |
k�r�|| }q�| dk�r�|d }|dk�rP|dk�r||� q��qP| dk�rP|| dk�r�|d }|d }�qP�qP|d |k�rt }q�t
}q�| dk�r2|�d|�}q�|| dk�rZ|d }|d |k�rZt}|d }q�|t k�r�|t
k�r�|dk�r�t
}|| _|d |k�r�||� d S )Nr"