3
™(ƒh¡  ã               @   s€   d dl mZ ddddddgZG dd„ deƒZG d	d„ deƒZG d
d„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )é    )Ú	AggregateÚArrayAggÚBitAndÚBitOrÚBoolAndÚBoolOrÚ	StringAggc               @   s   e Zd ZdZdd„ ZdS )r   Z	ARRAY_AGGc             C   s   |sg S |S )N© )ÚselfÚvalueÚ
expressionÚ
connectionÚcontextr	   r	   úN/tmp/pip-install-q3hcpn_q/Django/django/contrib/postgres/aggregates/general.pyÚconvert_value   s    zArrayAgg.convert_valueN)Ú__name__Ú
__module__Ú__qualname__Úfunctionr   r	   r	   r	   r   r      s   c               @   s   e Zd ZdZdS )r   ZBIT_ANDN)r   r   r   r   r	   r	   r	   r   r      s   c               @   s   e Zd ZdZdS )r   ZBIT_ORN)r   r   r   r   r	   r	   r	   r   r      s   c               @   s   e Zd ZdZdS )r   ZBOOL_ANDN)r   r   r   r   r	   r	   r	   r   r      s   c               @   s   e Zd ZdZdS )r   ZBOOL_ORN)r   r   r   r   r	   r	   r	   r   r      s   c                   s,   e Zd ZdZdZ‡ fdd„Zdd„ Z‡  ZS )r   Z
STRING_AGGz.%(function)s(%(expressions)s, '%(delimiter)s')c                s    t t| ƒj|fd|i|—Ž d S )NÚ	delimiter)Úsuperr   Ú__init__)r
   r   r   Úextra)Ú	__class__r	   r   r   %   s    zStringAgg.__init__c             C   s   |sdS |S )NÚ r	   )r
   r   r   r   r   r	   r	   r   r   (   s    zStringAgg.convert_value)r   r   r   r   Útemplater   r   Ú__classcell__r	   r	   )r   r   r   !   s   N)	Zdjango.db.models.aggregatesr   Ú__all__r   r   r   r   r   r   r	   r	   r	   r   Ú<module>   s   	