File: //opt/alt/python37/lib/python3.7/site-packages/jsons/__pycache__/_common_impl.cpython-37.pyc
B
�P�e� � @ s� d Z ddlZddlZddlmZ ddlmZmZmZm Z m
Z
ddlmZ ddl
mZ ddlmZ ed�ZeeeeefZeeeeeeeeef ZdZe d �ZG d
d� d�Zed(eeeegef eee d
�dd��Z ed�dd�Z!ee"ed�dd�Z#ee"ed�dd�Z$eeeed�dd�Z%e"eeee ee f d�dd�Z&ed�dd�Z'ee"eed �d!d"�Z(eed#�d$d%�Z)eee d#�d&d'�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 @ sT e Zd ZdZdZe� Ze� Ze� Z e� Z
e� Ze� Ze� Z
dZe� Zedd� �ZdS )�StateHolderzH
This class holds the registered serializers and deserializers.
r Fc O s2 | j s.|| jkr.d�||�}tj|f|�|� 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�kwargsZmsg_� r �C/opt/alt/python37/lib/python3.7/site-packages/jsons/_common_impl.py�_warn&