
    Ji%
                        S SK Jr  S SKrS SKJr  S SKJr   " S S\\R                  S9r " S S	\5      r	 " S
 S\5      r
 " S S\5      r " S S\\R                  S9r " S S\5      r " S S\5      rg)    )annotationsN)Function)format_alias_sqlc                  l   ^  \ rS rSrSSU 4S jjjr\\R                  SS j5       5       rS	S jr	Sr
U =r$ )
_AbstractSearchString	   c                J   > [         TU ]  U R                  5       XS9  X l        g N)alias)super__init__clickhouse_function_pattern)selfnamepatternr   	__class__s       a/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/pypika/clickhouse/search_string.pyr   _AbstractSearchString.__init__
   s#    113TG    c                    g N clss    r   r   )_AbstractSearchString.clickhouse_function        	r   c           
     z   / nU R                    H`  n[        US5      (       a2  UR                  SR                  UR                  " S	SS0UD6S95        MF  UR                  [        U5      5        Mb     SR                  U R                  SR                  U5      U R                  S9n[        XR                  40 UD6$ )
Nget_sqltoString("{arg}")
with_aliasFargz{name}({args},'{pattern}'),)r   argsr   r   )r%   hasattrappendformatr   strr   joinr   r   r   )	r   r!   with_namespace
quote_chardialectkwargsr%   psqls	            r   r   _AbstractSearchString.get_sql   s    Aq)$$/66199;`PU;`Y_;`6abCF#	  +11$MM 2 

  ZZ:6::r   )r   r   )r   r)   r   
str | Nonereturnr)   FFNN__name__
__module____qualname____firstlineno__r   classmethodabcabstractmethodr   r   __static_attributes____classcell__r   s   @r   r   r   	   s9       
   ; ;r   r   )	metaclassc                  (    \ rS rSr\SS j5       rSrg)Match$   c                    g)Nmatchr   r   s    r   r   Match.clickhouse_function%   s    r   r   Nr3   r7   r8   r9   r:   r;   r   r>   r   r   r   rC   rC   $   s     r   rC   c                  (    \ rS rSr\SS j5       rSrg)Like*   c                    g)Nliker   r   s    r   r   Like.clickhouse_function+   s    r   r   Nr3   rH   r   r   r   rJ   rJ   *   s     r   rJ   c                  (    \ rS rSr\SS j5       rSrg)NotLike0   c                    g)NnotLiker   r   s    r   r   NotLike.clickhouse_function1   s    r   r   Nr3   rH   r   r   r   rP   rP   0   s     r   rP   c                  l   ^  \ rS rSrSSU 4S jjjr\\R                  SS j5       5       rS	S jr	Sr
U =r$ )
_AbstractMultiSearchString6   c                J   > [         TU ]  U R                  5       XS9  X l        g r
   )r   r   r   	_patterns)r   r   patternsr   r   s       r   r   #_AbstractMultiSearchString.__init__7   s#    113TG!r   c                    g r   r   r   s    r   r   ._AbstractMultiSearchString.clickhouse_function<   r   r   c                   / nU R                    H`  n[        US5      (       a2  UR                  SR                  UR                  " S
SS0UD6S95        MF  UR                  [        U5      5        Mb     SR                  U R                  SR                  U5      SR                  U R                   Vs/ s H  nSU-  PM
     sn5      S	9n	[        XR                  40 UD6$ s  snf )Nr   r    r!   Fr"   z{name}({args},[{patterns}])r$   z'%s')r   r%   rZ   r   )r%   r&   r'   r(   r   r)   r   r*   rY   r   r   )
r   r!   r+   r,   r-   r.   r%   r/   ir0   s
             r   r   "_AbstractMultiSearchString.get_sqlA   s    Aq)$$/66199;`PU;`Y_;`6abCF#	  ,22$XX4>>B>avz>BC 3 

  ZZ:6:: Cs   2C )rY   r   )rZ   listr   r2   r3   r5   r6   r@   s   @r   rV   rV   6   s9    " "
   ; ;r   rV   c                  (    \ rS rSr\SS j5       rSrg)MultiSearchAnyQ   c                    g)NmultiSearchAnyr   r   s    r   r   "MultiSearchAny.clickhouse_functionR   s    r   r   Nr3   rH   r   r   r   rc   rc   Q   s       r   rc   c                  (    \ rS rSr\SS j5       rSrg)MultiMatchAnyW   c                    g)NmultiMatchAnyr   r   s    r   r   !MultiMatchAny.clickhouse_functionX   s    r   r   Nr3   rH   r   r   r   ri   ri   W   s     r   ri   )
__future__r   r<   pypika.termsr   pypika.utilsr   ABCMetar   rC   rJ   rP   rV   rc   ri   r   r   r   <module>rr      sv    " 
 ! );H ;6!   # ;S[[ ;6 /  . r   