o
    Rh                     @   s  d dl mZ d dlmZ dZd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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ZG dd dZG dd dZG dd  d eZG d!d" d"eZd#S )$    )Enum)AnyzTimothy Heysztheys@kayak.comc                   @   $   e Zd ZdZdZdZdZdZdZdS )
Arithmetic+-*/z<<z>>N)	__name__
__module____qualname__addsubmuldivlshiftrshift r   r   N/home/air/sanwanet/backup_V2/venv/lib/python3.10/site-packages/pypika/enums.pyr          r   c                   @   s   e Zd ZdS )
ComparatorN)r
   r   r   r   r   r   r   r      s    r   c                   @   r   )Equality=z<>>z>=<z<=N)	r
   r   r   eqnegtgteltlter   r   r   r   r      r   r   c                   @   s4   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdS )Matchingz
 NOT LIKE z LIKE z NOT ILIKE z ILIKE z RLIKE z REGEX z REGEXP z REGEX BINARY z AS OF z GLOB N)r
   r   r   not_likelike	not_ilikeilikerlikeregexregexp	bin_regexas_ofglobr   r   r   r   r!      s    r!   c                   @       e Zd ZdZdZdZdZdZdS )BooleanANDORXORTRUEFALSEN)r
   r   r   and_or_xor_truefalser   r   r   r   r-   +       r-   c                   @   s   e Zd ZdZdZdS )OrderASCDESCN)r
   r   r   ascdescr   r   r   r   r9   3   s    r9   c                   @   s0   e Zd ZdZdZdZdZdZdZdZ	dZ
dZd	S )
JoinType LEFTRIGHTz
FULL OUTERz
LEFT OUTERzRIGHT OUTERCROSSHASHN)r
   r   r   innerleftrightouter
left_outerright_outer
full_outercrosshashr   r   r   r   r>   8       r>   c                   @   r,   )ReferenceOptionCASCADEz	NO ACTIONRESTRICTzSET NULLzSET DEFAULTN)r
   r   r   cascade	no_actionrestrictset_nullset_defaultr   r   r   r   rN   D   r8   rN   c                   @   r,   )SetOperationUNIONz	UNION ALL	INTERSECTEXCEPTMINUSN)r
   r   r   union	union_all	intersect	except_ofminusr   r   r   r   rV   L   r8   rV   c                   @   0   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
S )DatePartYEARQUARTERMONTHWEEKDAYHOURMINUTESECONDMICROSECONDN)r
   r   r   yearquartermonthweekdayhourminutesecondmicrosecondr   r   r   r   ra   T   rM   ra   c                   @   sB   e Zd ZdeddfddZdeddfdd	Zd
edefddZdS )SqlTypenamereturnNc                 C   s
   || _ d S Nru   )selfru   r   r   r   __init__a   s   
zSqlType.__init__lengthSqlTypeLengthc                 C   s   t | j|S rw   )r|   ru   )ry   r{   r   r   r   __call__d   s   zSqlType.__call__kwargsc                 K   s   dj | jdS )Nz{name}rx   )formatru   ry   r~   r   r   r   get_sqlg   s   zSqlType.get_sql)	r
   r   r   strrz   intr}   r   r   r   r   r   r   rt   `   s    rt   c                   @   s4   e Zd ZdededdfddZdedefdd	ZdS )
r|   ru   r{   rv   Nc                 C   s   || _ || _d S rw   ru   r{   )ry   ru   r{   r   r   r   rz   l   s   
zSqlTypeLength.__init__r~   c                 K   s   dj | j| jdS )Nz{name}({length})r   )r   ru   r{   r   r   r   r   r   p   s   zSqlTypeLength.get_sql)r
   r   r   r   r   rz   r   r   r   r   r   r   r|   k   s    r|   c                   @   s`   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zed
ZedZedZedZedZedZdS )SqlTypesBOOLEANINTEGERFLOATNUMERICSIGNEDUNSIGNEDDATETIME	TIMESTAMPCHARVARCHARzLONG VARCHARBINARY	VARBINARYzLONG VARBINARYN)r
   r   r   r   r   r   r   r   r   r   r   r   rt   r   r   LONG_VARCHARr   r   LONG_VARBINARYr   r   r   r   r   t   s     r   c                   @   r`   )Dialectsvertica
clickhouseoraclemssqlmysqlpostgressqlredshiftsqllite	snowflakeN)r
   r   r   VERTICA
CLICKHOUSEORACLEMSSQLMYSQL
POSTGRESQLREDSHIFTSQLLITE	SNOWFLAKEr   r   r   r   r      rM   r   c                   @   r`   )JSONOperators?z@>z<@z?&z?|z->z->>z#>z#>>N)r
   r   r   HAS_KEYCONTAINSCONTAINED_BYHAS_KEYSHAS_ANY_KEYSGET_JSON_VALUEGET_TEXT_VALUEGET_PATH_JSON_VALUEGET_PATH_TEXT_VALUEr   r   r   r   r      rM   r   N)enumr   typingr   
__author__	__email__r   r   r   r!   r-   r9   r>   rN   rV   ra   rt   r|   r   r   r   r   r   r   r   <module>   s&    			