File: //opt/alt/python311/lib/python3.11/site-packages/jsons/__pycache__/_common_impl.cpython-311.pyc
�
)�;f� � � � d Z ddlZddlZddlmZ ddlmZmZmZm Z m
Z
ddlmZ ddl
mZ ddlmZ ed� � ZeeeeefZeeeeeeeeef ZdZ e d � � Z G d
� d� � Ze d"d
edeeegef dedee fd�� � Z d
efd�Z!dede"defd�Z#dede"defd�Z$d
edededefd�Z%de"dedeee ee f fd�Z&d
efd�Z'dede"dedefd�Z(d
edefd �Z)d
edee fd!�Z*dS )#z�
PRIVATE MODULE: do not import (from) it directly.
This module contains implementations of common functionality that can be used
throughout `jsons`.
� N)�
import_module)�Callable�Optional�Tuple�TypeVar�Any)�cached)�get_union_params)�UnknownClassErrorz-meta�Tc �� � e Zd ZdZdZ e� � Z e� � Z e� � Z e� � Z
e� � Z e� � Z e� � Z
dZ e� � Zed� � � ZdS )�StateHolderzH
This class holds the registered serializers and deserializers.
r Fc � � | j s6|| j vr/d� ||� � }t j |g|�R i |�� d S d S d S )NzP{} Use suppress_warning({}) or suppress_warnings(True) to turn off this message.)�_suppress_warnings�_suppressed_warnings�format�warnings�warn)�cls�msg�code�args�kwargs�msg_s �E/opt/alt/python311/lib/python3.11/site-packages/jsons/_common_impl.py�_warnzStateHolder._warn&