509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3

  \½  ã               @   st   d dl Z d dlZddlmZmZ G dd„ deƒZdd„ ZdZi Z	x.ej
ƒ D ]"ZerJejƒ \ZZeeeƒe	e< qJW dS )	é    Né   )ÚtokenÚtokenizec               @   s<   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )ÚGrammarc             C   s<   i | _ i | _g | _i | _dg| _i | _i | _i | _d| _d S )Nr   ÚEMPTYé   )r   r   )	Úsymbol2numberÚnumber2symbolÚstatesÚdfasÚlabelsÚkeywordsÚtokensÚsymbol2labelÚstart)Úself© r   ú-/usr/lib64/python3.6/lib2to3/pgen2/grammar.pyÚ__init__M   s    zGrammar.__init__c             C   s2   t |dƒ�}t| jƒ}tj||dƒ W d Q R X d S )NÚwbé   )ÚopenÚ_make_deterministicÚ__dict__ÚpickleÚdump)r   ÚfilenameÚfÚdr   r   r   r   X   s    
zGrammar.dumpc          	   C   s0   t |dƒ�}tj|ƒ}W d Q R X | jj|ƒ d S )NÚrb)r   r   Úloadr   Úupdate)r   r   r   r   r   r   r   r    i   s    zGrammar.loadc             C   s   | j jtj|ƒƒ d S )N)r   r!   r   Úloads)r   Zpklr   r   r   r"   o   s    zGrammar.loadsc             C   sX   | j ƒ }x"dD ]}t||t| |ƒjƒ ƒ qW | jd d … |_| jd d … |_| j|_|S )Nr   r	   r   r   r   r   )r   r	   r   r   r   r   )Ú	__class__ÚsetattrÚgetattrÚcopyr   r
   r   )r   ÚnewZ	dict_attrr   r   r   r&   s   s    zGrammar.copyc             C   sv   ddl m } tdƒ || jƒ tdƒ || jƒ tdƒ || jƒ tdƒ || jƒ tdƒ || jƒ td| jƒ d S )	Nr   )ÚpprintZs2nZn2sr
   r   r   r   )r(   Úprintr   r	   r
   r   r   r   )r   r(   r   r   r   Úreport€   s    




zGrammar.reportN)	Ú__name__Ú
__module__Ú__qualname__r   r   r    r"   r&   r*   r   r   r   r   r      s   6r   c             C   s^   t | tƒr&tjtdd„ | jƒ D ƒƒƒS t | tƒr>dd„ | D ƒS t | tƒrZtdd„ | D ƒƒS | S )Nc             s   s   | ]\}}|t |ƒfV  qd S )N)r   )Ú.0ÚkÚvr   r   r   ú	<genexpr>“   s    z&_make_deterministic.<locals>.<genexpr>c             S   s   g | ]}t |ƒ‘qS r   )r   )r.   Úer   r   r   ú
<listcomp>•   s    z'_make_deterministic.<locals>.<listcomp>c             s   s   | ]}t |ƒV  qd S )N)r   )r.   r2   r   r   r   r1   —   s    )Ú
isinstanceÚdictÚcollectionsÚOrderedDictÚsortedÚitemsÚlistÚtuple)Útopr   r   r   r   �   s    


r   a  
( LPAR
) RPAR
[ LSQB
] RSQB
: COLON
, COMMA
; SEMI
+ PLUS
- MINUS
* STAR
/ SLASH
| VBAR
& AMPER
< LESS
> GREATER
= EQUAL
. DOT
% PERCENT
` BACKQUOTE
{ LBRACE
} RBRACE
@ AT
@= ATEQUAL
== EQEQUAL
!= NOTEQUAL
<> NOTEQUAL
<= LESSEQUAL
>= GREATEREQUAL
~ TILDE
^ CIRCUMFLEX
<< LEFTSHIFT
>> RIGHTSHIFT
** DOUBLESTAR
+= PLUSEQUAL
-= MINEQUAL
*= STAREQUAL
/= SLASHEQUAL
%= PERCENTEQUAL
&= AMPEREQUAL
|= VBAREQUAL
^= CIRCUMFLEXEQUAL
<<= LEFTSHIFTEQUAL
>>= RIGHTSHIFTEQUAL
**= DOUBLESTAREQUAL
// DOUBLESLASH
//= DOUBLESLASHEQUAL
-> RARROW
)r6   r   Ú r   r   Úobjectr   r   Z	opmap_rawZopmapÚ
splitlinesÚlineÚsplitÚopÚnamer%   r   r   r   r   Ú<module>   s   y=