File: //usr/lib/python3/dist-packages/django/core/checks/__pycache__/registry.cpython-310.pyc
o
3�a� � @ s\ d dl mZ d dlmZ d dlmZ G dd� d�ZG dd� d�Ze� Zej Z ej
Z
ejZdS ) � )�chain)�func_accepts_kwargs)�is_iterablec @ sD e Zd ZdZdZdZdZdZdZdZ dZ
d Zd
ZdZ
dZd
ZdZdS )�Tagsz,
Built-in tags for internal checks.
�admin�
async_support�caches�
compatibility�database�models�security�signals�sites�staticfiles� templates�translation�urlsN)�__name__�
__module__�__qualname__�__doc__r r r r r
r r r
r r r r r � r r �=/usr/lib/python3/dist-packages/django/core/checks/registry.pyr s r c @ sF e Zd Zdd� Zddd�Zddd�Zdd d
�Zddd�Zdd
d�ZdS )�
CheckRegistryc C s t � | _t � | _d S �N)�set�registered_checks�deployment_checks)�selfr r r �__init__ s zCheckRegistry.__init__Nc s2 � ��fdd�}t |�r||�S |r�|f7 �|S )a
Can be used as a function or a decorator. Register given function
`f` labeled with given `tags`. The function should receive **kwargs
and return list of Errors and Warnings.
Example::
registry = CheckRegistry()
@registry.register('mytag', 'anothertag')
def my_check(app_configs, **kwargs):
# ... perform checks and collect `errors` ...
return errors
# or
registry.register(my_check, 'mytag', 'anothertag')
c s: t | �std���| _� �d�r�jn�j}|�| � | S )Nz9Check functions must accept keyword arguments (**kwargs).�deploy)r � TypeError�tags�getr r �add)�check�checks��kwargsr r"