Your IP : 216.73.216.196
B
��\VJ �
@ s8 d Z ddlZddlZddlZddlmZ ddlmZ ddlmZ e� d�Z
e� d�ZejZ
e� d�Ze�� Zejd kr�d
Z
dZndZ
d
Ze
d dhZddddddddddh
Zdd� ZG dd� d�Zd.dd�Zd d!� ZG d"d#� d#e�ZG d$d%� d%e�ZG d&d'� d'e�ZG d(d)� d)e�ZG d*d+� d+e�ZG d,d-� d-e�ZdS )/zXThis module contains base classes and functions for the nodes and some
inference utils.
� N)�context)�
exceptions)�utilzinterpreter.objectmodel�helpers�manager)� r �builtins�__bool__Z__builtin__Z__nonzero__z .propertyzabc.abstractpropertyZcached_propertyZcachedpropertyZlazypropertyZ
lazy_propertyZreifyZ
lazyattributeZlazy_attributeZLazyPropertyZlazyZcache_readonlyc s� t �| �� �rdS dd� | �� D �� t� fdd�tD ��r>dS | jsHdS x�| jjpTdD ]t}t�|�}|d ksV|t j
krxqV|jjdkrVxD|j
D ]:}|jjd kr�q�|�|j�\}}|jtkr�|jd
kr�dS q�W qVW dS )NTc S s$ h | ]}|t jk r|�d �d �qS )�.���)r �Uninferable�split)�.0�name� r �>/opt/alt/python37/lib/python3.7/site-packages/astroid/bases.py� <setcomp>D s z_is_property.<locals>.<setcomp>c 3 s | ]}|� kV qd S )Nr )r r )�strippedr r � <genexpr>I s z_is_property.<locals>.<genexpr>Fr �ClassDef�Name�property)�
PROPERTIES�intersectionZdecoratornames�any�POSSIBLE_PROPERTIES�
decoratorsZnodesr Z
safe_inferr r � __class__�__name__�bases�lookupr �BUILTINS)�methZ decorator�inferredZ
base_class�module�_r )r r �_is_propertyA s(
r&