o
    viZ                     @  s  d dl mZ 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 )%    )annotations)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   K/home/air/biblejyuku/back/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                   @  4   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#           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   r0   -       r0   c                   @  s   e Zd ZdZdZdS )OrderASCDESCN)r   r   r   ascdescr   r   r   r   r<   5   s    r<   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   rA   :       rA   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   rQ   F   r;   rQ   c                   @  r/   )SetOperationUNIONz	UNION ALL	INTERSECTEXCEPTMINUSN)r   r   r   union	union_all	intersect	except_ofminusr   r   r   r   rY   N   r;   rY   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   rd   V   rP   rd   c                   @  s*   e Zd ZdddZdd
dZdddZdS )SqlTypenamestrreturnNonec                 C  s
   || _ d S Nrx   )selfrx   r   r   r   __init__c   s   
zSqlType.__init__lengthintSqlTypeLengthc                 C  s   t | j|S r|   )r   rx   )r~   r   r   r   r   __call__f   s   zSqlType.__call__kwargsr   c                 K  s   dj | jdS )Nz{name}r}   )formatrx   r~   r   r   r   r   get_sqli   s   zSqlType.get_sqlN)rx   ry   rz   r{   )r   r   rz   r   r   r   rz   ry   )r   r   r   r   r   r   r   r   r   r   rw   b   s    

rw   c                   @  s    e Zd ZdddZdddZdS )r   rx   ry   r   r   rz   r{   c                 C  s   || _ || _d S r|   rx   r   )r~   rx   r   r   r   r   r   n   s   
zSqlTypeLength.__init__r   r   c                 K  s   dj | j| jdS )Nz{name}({length})r   )r   rx   r   r   r   r   r   r   r   s   zSqlTypeLength.get_sqlN)rx   ry   r   r   rz   r{   r   )r   r   r   r   r   r   r   r   r   r   m   s    
r   c                   @  sd   e Zd 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UNSIGNEDzINTEGER AUTO_INCREMENTDATETIME	TIMESTAMPCHARVARCHARzLONG VARCHARBINARY	VARBINARYzLONG VARBINARYN)r   r   r   r   r   r   r   r   r   INTEGER_AUTO_INCREMENTr   r   r   rw   r   r   LONG_VARCHARr   r   LONG_VARBINARYr   r   r   r   r   v   s"    r   c                   @  r"   )Dialectsvertica
clickhousejiraoraclemssqlmysql
postgresqlredshiftsqllite	snowflakeN)r   r   r   VERTICA
CLICKHOUSEJIRAORACLEMSSQLMYSQL
POSTGRESQLREDSHIFTSQLLITE	SNOWFLAKEr   r   r   r   r      r.   r   c                   @  rc   )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      rP   r   N)
__future__r   enumr   typingr   
__author__	__email__r   r   r   r#   r0   r<   rA   rQ   rY   rd   rw   r   r   r   r   r   r   r   r   <module>   s(    			