관리-도구
편집 파일: mypy.cpython-38.pyc
U /?�f�� � @ s� d Z ddlmZ ddlZddlmZ ddlmZmZm Z ddl mZ ddlm Z mZ ddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/ dd l0m1Z1 dd l2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9 ddl:m;Z; ddl<m=Z= dd l>m?Z? ddl@mAZA ddlBmCZC ddlDmEZE ddlFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQ ddlRmSZS ddlTmUZU ddlVmWZX ddlYmZZZ ddl[m\Z\ zddlFm]Z] W n" e^k �r� ddlFmOZ] Y nX dZ_dZ`dZadZbdZcdZddZed Zfd!Zgd"d!d#d$d%d&hZhe\eX�Zieid'k�rBd(nd)Zjd*ZWd+d,d-�d.d/�ZkG d0d1� d1e7�ZlG d2d3� d3�Zmd4d5d6�d7d8�ZnG d9d:� d:�ZoG d;d<� d<�ZpG d=d>� d>�ZqG d?d@� d@�ZredAdBdC�ZsedDdEdC�ZtedFdGdC�ZuedHdIdC�ZvedJdKdC�ZwedJdLdC�ZxedJdMdC�Zyd+dNdOdPdQ�dRdS�Zzd+dTdOdPdU�dVdW�Z{dTdOdPdX�dYdZ�Z|d+d[dOdPd\�d]d^�Z}dTdOdPdX�d_d`�Z~dNdOdPdX�dadb�ZdNdOdPdX�dcdd�Z�dsdfdgd+dhd5didjdkdPdl� dmdn�Z�d+dodp�dqdr�Z�dS )tz^This module includes classes and functions designed specifically for use with the mypy plugin.� )�annotationsN)�ConfigParser)�Any�Callable�Iterator)� ErrorCode)�expand_type�expand_type_by_instance) � ARG_NAMED� ARG_NAMED_OPT�ARG_OPT�ARG_POS� ARG_STAR2� INVARIANT�MDEF�Argument�AssignmentStmt�Block�CallExpr�ClassDef�Context� Decorator�DictExpr�EllipsisExpr� Expression�FuncDef�IfStmt�JsonDict� MemberExpr�NameExpr�PassStmt�PlaceholderNode�RefExpr� Statement�StrExpr�SymbolTableNode�TempNode� TypeAlias�TypeInfo�Var)�Options)�CheckerPluginInterface�ClassDefContext�FunctionContext� MethodContext�Plugin�ReportConfigContext�SemanticAnalyzerPluginInterface)�dataclasses)�deserialize_and_fixup_type)�set_callable_name)�make_wildcard_trigger)�state)�map_type_from_supertype)�AnyType�CallableType�Instance�NoneType� Overloaded�Type� TypeOfAny�TypeType�TypeVarType� UnionType�get_proper_type)� fill_typevars)�get_unique_redefinition_name)�__version__)�_fields)�parse_mypy_version)� TypeVarDef)r@ � pydantic-mypyzpydantic-mypy-metadatazpydantic.main.BaseModelz#pydantic_settings.main.BaseSettingszpydantic.root_model.RootModelz5pydantic._internal._model_construction.ModelMetaclasszpydantic.fields.Fieldzpydantic.dataclasses.dataclassz.pydantic.functional_validators.model_validatorz.pydantic.functional_validators.field_validatorz*pydantic.functional_serializers.serializerz0pydantic.functional_serializers.model_serializerz.pydantic.deprecated.class_validators.validatorz3pydantic.deprecated.class_validators.root_validator)r i� �builtins�__builtins__� �strztype[Plugin])�version�returnc C s t S )a! `version` is the mypy version string. We might want to use this to print a warning if the mypy version being used is newer, or especially older, than we expect (or need). Args: version: The mypy version string. Return: The Pydantic mypy plugin type. )�PydanticPlugin)rN � rQ �;/opt/hc_python/lib/python3.8/site-packages/pydantic/mypy.py�plugins s rS c s� e Zd ZdZddd�� fdd�Zddd �d d�Zddd �d d�Zddd �dd�Zddd �dd�Zddd �dd�Z ddd�dd�Z ddd�dd�Zddd�d d!�Zd"d#d�d$d%�Z � ZS )&rP zThe Pydantic mypy plugin.r* �None��optionsrO c s&