관리-도구
편집 파일: utils.cpython-311.pyc
� �܋f� � �. � d Z ddlmZ ddlZddlZddlZddlZddlZddlm Z m Z mZmZm Z mZ ddlZddlmZ ddlmZ e rEddlmZmZ eej gee e e eef df f Ze ee ee f ZdZd-d�Zd.d �Z ej d� � Z ej d� � Z ej d� � Zd/d�Z d0d�Z!d0d�Z"dZ#dZ$dZ%de#e$z e%z e#e$e%z d�Z&e#e$e%dd�Z' G d� d� � Z( G d � d!� � Z)d1d$�Z*d2d'�Z+d3d)�Z,d.d*�Z-d4d,�Z.dS )5z8Generic classes/functions for pyreverse core/extensions.� )�annotationsN)� TYPE_CHECKING�Any�Callable�Optional�Tuple�Union)�nodes)�InferenceResult)�ClassDiagram�PackageDiagramz.pyreverserc�return� list[str]c �Z � g } t j � dd� � }|r�t j � |t � � } t |d�� � 5 }|� � � � � � } ddd� � n# 1 swxY w Y n# t $ r Y nw xY w| S )z,Read config file and return list of options.�HOME� �utf-8)�encodingN) �os�environ�get�path�join�RCFILE�open�read�split�OSError)�options�home�rcfile�file_handles �g/builddir/build/BUILD/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/pylint/pyreverse/utils.py�get_default_optionsr$ ! s� � ��G� �:�>�>�&�"�%�%�D�� �����d�F�+�+�� ��f�w�/�/�/� 5�;�%�*�*�,�,�2�2�4�4�� 5� 5� 5� 5� 5� 5� 5� 5� 5� 5� 5���� 5� 5� 5� 5���� � � ��D� �����Ns6 �B �'B�B �B�B �B�B � B(�'B(�Nonec � � t � � } | � � � | D ]"}t j � d|� � �#dS )z#Insert default options to sys.argv.� N)r$ �reverse�sys�argv�insert)r �args r# �insert_default_optionsr- / sO � �!�#�#�G��O�O����� � �������3����� � � z^__([^\W_]_*)+__$z^__(_*[^\W_])+_?$z^_\w*$�name�strc � � t � | � � rd}n<t � | � � rd}nt � | � � rd}nd}|S )zIReturn the visibility from a name: public, protected, private or special.�special�private� protected�public)�SPECIAL�match�PRIVATE� PROTECTED)r/ � visibilitys r# �get_visibilityr; = s` � ��}�}�T��� �� � � ���t� � � �� � � ���� � � � � � � � ��r. �node�nodes.ClassDef�boolc � � | j dk S )N� interface��type�r<