File manager - Edit - /usr/local/CyberCP/lib/python3.10/site-packages/django/contrib/postgres/aggregates/__pycache__/general.cpython-310.pyc
Back
o �hu � @ s d dl Z d dlZd dlmZ d dlmZmZmZmZm Z d dl mZmZ ddl mZ g d�Ze� ZG dd � d �ZG d d� deee�ZG dd � d e�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� deee�ZG dd� deee�ZdS )� N)� ArrayField)� Aggregate�BooleanField� JSONField� TextField�Value)�RemovedInDjango50Warning�RemovedInDjango51Warning� )�OrderableAggMixin)�ArrayAgg�BitAnd�BitOr�BitXor�BoolAnd�BoolOr�JSONBAgg� StringAggc s6 e Zd Zed�� fdd� Z� fdd�Zdd� Z� ZS )�DeprecatedConvertValueMixin��defaultc s4 |t u r d }d| _nd| _t� j|d|i|�� d S )NFTr )�NOT_PROVIDED�_default_provided�super�__init__)�selfr �expressions�extra�� __class__� �]/usr/local/CyberCP/lib/python3.10/site-packages/django/contrib/postgres/aggregates/general.pyr s z$DeprecatedConvertValueMixin.__init__c s, t � j|i |��}| jst| d| j�|_|S )N�"deprecation_empty_result_set_value)r �resolve_expressionr �getattr�deprecation_value�empty_result_set_value)r �args�kwargs�resolvedr r r! r# # s �z.DeprecatedConvertValueMixin.resolve_expressionc C s( |d u r| j stj| jtd� | jS |S )N)�category)r �warnings�warn�deprecation_msgr r% )r �value� expression� connectionr r r! � convert_value+ s z)DeprecatedConvertValueMixin.convert_value)�__name__� __module__�__qualname__r r r# r1 � __classcell__r r r r! r s r c @ s4 e Zd ZdZdZdZedd� �ZdZedd� �Z d S ) r � ARRAY_AGG�6%(function)s(%(distinct)s%(expressions)s %(ordering)s)Tc C � g S �Nr �r r r r! �<lambda>8 � zArrayAgg.<lambda>z�In Django 5.0, ArrayAgg() will return None instead of an empty list if there are no rows. Pass default=None to opt into the new behavior and silence this warning or default=[] to keep the previous behavior.c C s t | jd j�S )Nr )r �source_expressions�output_fieldr: r r r! r>