
 X                 @   s   d  d l  m Z d d d d d d g Z Gd d   d e  Z Gd	 d   d e  Z Gd
 d   d e  Z Gd d   d e  Z Gd d   d e  Z Gd 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	   X/home/ubuntu/projects/ifolica/build/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   S)r   Z
STRING_AGGz.%(function)s(%(expressions)s, '%(delimiter)s')c                s#   t  t |   j | d | | 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   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   	