Your IP : 3.14.254.103
3
� fm � @ sN d Z ddlZddlmZmZmZmZmZmZmZm Z m
Z
mZmZm
Z
mZmZ ddlZdddddgZd d� ZG d
d� d�Ze� ZG dd� de�ZG d
d� de�ZG dd� de�ZG dd� de�Zedk�rJddlZddlZeejd ��Zej � Z!W dQ R X ee!ej"j#ejd �d d�Z$x0e$j%� D ]$Z&e$j'e&�Z(e)e(e(j*� e(j+� � �q"W dS )z2Interface to the compiler's internal symbol tables� N)�USE�
DEF_GLOBAL� DEF_LOCAL� DEF_PARAM�
DEF_IMPORT� DEF_BOUND� DEF_ANNOT� SCOPE_OFF�
SCOPE_MASK�FREE�LOCAL�GLOBAL_IMPLICIT�GLOBAL_EXPLICIT�CELL�symtable�SymbolTable�Class�Function�Symbolc C s t j| ||�}t||�S )N)� _symtabler �_newSymbolTable)�code�filenameZcompile_type�top� r �-/opt/alt/python36/lib64/python3.6/symtable.pyr s c @ s$ e Zd Zdd� Zdd� Zdd� ZdS )�SymbolTableFactoryc C s t j� | _d S )N)�weakref�WeakValueDictionary�_SymbolTableFactory__memo)�selfr r r �__init__ s zSymbolTableFactory.__init__c C s6 |j tjkrt||�S |j tjkr,t||�S t||�S )N)�typer �
TYPE_FUNCTIONr �
TYPE_CLASSr r )r �tabler r r r �new s
zSymbolTableFactory.newc C s8 ||f}| j j|d �}|d kr4| j||� }| j |<