+
    Tjm                          ^ RI HtHt ^ RIHt ^RIHt . ROt ! R R]]4      t ! R R]4      t	 ! R R]4      t
 ! R R]4      t ! R R]4      t ! R R]4      t ! R R	]4      t ! R R
]4      t ! R R]4      tR# )    )FuncIndex)cached_property)CheckPostgresInstalledMixin
BloomIndex	BrinIndex
BTreeIndexGinIndex	GistIndex	HashIndexSpGistIndexc                   R   a a ] tR t^t o]R 4       tRV 3R lltR tR tRt	Vt
V ;t# )PostgresIndexc                    \         P                  \        \         P                  4      ,
          \        V P                  4      ,           # N)r   max_name_lengthlensuffixselfs   &T/var/www/idalgo/venv/lib/python3.14/site-packages/django/contrib/postgres/indexes.pyr   PostgresIndex.max_name_length   s,     $$s5<<'883t{{;KKK    c                $  < V P                  V4       \        SV `  ! W3R RT;'       g    V P                  ,          /VB pV P	                  4       pV'       d8   RRP                  V4      : RVP                  R,          : 2VP                  R&   V# )usingz	 USING %sz WITH (z, )extra)check_supportedsuper
create_sqlr   get_with_paramsjoinparts)r   modelschema_editorr   kwargs	statementwith_params	__class__s   &&&&,  r   r    PostgresIndex.create_sql   s    ]+G&
(3u7K7K(L
PV
	 **,;		+&((IOOG$ r   c                    R # r    )r   r%   s   &&r   r   PostgresIndex.check_supported'   s    r   c                    . # r   r,   r   s   &r   r!   PostgresIndex.get_with_params*   s    	r   r,   ) )__name__
__module____qualname____firstlineno__r   r   r    r   r!   __static_attributes____classdictcell____classcell__r)   __classdict__s   @@r   r   r      s-     L L r   r   c                   T   a a ] tR t^.t oRtRRRR	/V 3R lltV 3R ltR tRtVt	V ;t
# )
r   bloomlengthNcolumnsc                 < \         SV `  ! V/ VB  \        V P                  4      ^ 8  d   \	        R4      h\        V\        \        34      '       g   \	        R4      h\        V4      \        V P                  4      8  d   \	        R4      h\        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   \	        R4      hVe   ^ Tu;8  d   R	8:  g   M \	        R
4      hWn	        W n
        R# )    z-Bloom indexes support a maximum of 32 fields.z+BloomIndex.columns must be a list or tuple.z7BloomIndex.columns cannot have more values than fields.c              3   N   "   T F  p^ Tu;8  ;'       d    R8*  Mu x  K  	  R# 5i)r   i  Nr,   ).0cols   & r   	<genexpr>&BloomIndex.__init__.<locals>.<genexpr>9   s     6gs1s??d??gs   %%FTz8BloomIndex.columns must contain integers from 1 to 4095.Ni   z<BloomIndex.length must be None or an integer from 1 to 4096.)r   __init__r   fields
ValueError
isinstancelisttupleallr<   r=   )r   r<   r=   expressionsr&   r)   s   &$$*,r   rE   BloomIndex.__init__1   s    +00t{{b LMM'D%=11JKKw<#dkk**VWWs6g6sss6g666J  a&&8D&8N  r   c                   < \         SV `  4       w  rpV P                  e   V P                  VR&   V P                  '       d   V P                  VR&   WV3# )Nr<   r=   )r   deconstructr<   r=   r   pathargsr&   r)   s   &   r   rO   BloomIndex.deconstructD   sO    "W02F;;"#{{F8<<< $F96!!r   c                    . pV P                   e#   VP                  RV P                   ,          4       V P                  '       d.   VP                  R \	        V P                  ^R7       4       4       V# )Nzlength = %dc              3   :   "   T F  w  rR W3,          x  K  	  R# 5i)z
col%d = %dNr,   )rA   ivs   &  r   rC   -BloomIndex.get_with_params.<locals>.<genexpr>Q   s       2R$!v%%2Rs   )start)r<   appendr=   extend	enumerater   r(   s   & r   r!   BloomIndex.get_with_paramsL   s`    ;;"}t{{:;<<< 2;DLLPQ2R  r   )r=   r<   r,   r1   r2   r3   r4   r   rE   rO   r!   r5   r6   r7   r8   s   @@r   r   r   .   s,     FD " &" r   c                   T   a a ] tR t^Wt oRtRRRR/V 3R lltV 3R ltR tRtVt	V ;t
# )	r   brinautosummarizeNpages_per_rangec               l   < Ve   V^ 8:  d   \        R4      hWn        W n        \        SV `  ! V/ VB  R # )Nz2pages_per_range must be None or a positive integer)rG   rb   rc   r   rE   )r   rb   rc   rL   r&   r)   s   &$$*,r   rE   BrinIndex.__init__Z   s<     &?a+?QRR*.+00r   c                   < \         SV `  4       w  rpV P                  e   V P                  VR&   V P                  e   V P                  VR&   WV3# )Nrb   rc   )r   rO   rb   rc   rP   s   &   r   rO   BrinIndex.deconstructc   sY    "W02F)&*&8&8F?#+(,(<(<F$%6!!r   c                    . pV P                   e-   TP                  RV P                   '       d   RMR,          4       V P                  e#   VP                  RV P                  ,          4       V# )Nzautosummarize = %sonoffzpages_per_range = %d)rb   rZ   rc   r]   s   & r   r!   BrinIndex.get_with_paramsk   sd    )$0B0B0BN +58L8LLMr   )rb   rc   r_   r8   s   @@r   r   r   W   s.     F1*.1@D1" r   c                   T   a a ] tR t^vt oRtRRRR/V 3R lltV 3R ltR tRtVt	V ;t
# )	r	   btree
fillfactorNdeduplicate_itemsc               @   < Wn         W n        \        SV `  ! V/ VB  R # r   )rn   ro   r   rE   )r   rn   ro   rL   r&   r)   s   &$$*,r   rE   BTreeIndex.__init__y   s     $!2+00r   c                   < \         SV `  4       w  rpV P                  e   V P                  VR&   V P                  e   V P                  VR&   WV3# )Nrn   ro   )r   rO   rn   ro   rP   s   &   r   rO   BTreeIndex.deconstruct~   sU    "W02F??&#'??F< !!-*.*@*@F&'6!!r   c                    . pV P                   e#   VP                  RV P                   ,          4       V P                  e-   TP                  RV P                  '       d   RMR,          4       V# )Nfillfactor = %dzdeduplicate_items = %sri   rj   )rn   rZ   ro   r]   s   & r   r!   BTreeIndex.get_with_params   sa    ??&04??BC!!-(D4J4J4JDPUV r   )ro   rn   r_   r8   s   @@r   r	   r	   v   s,     F1 1 1
" r   c                   T   a a ] tR t^t oRtRRRR/V 3R lltV 3R ltR tRtVt	V ;t
# )	r
   gin
fastupdateNgin_pending_list_limitc               @   < Wn         W n        \        SV `  ! V/ VB  R # r   )ry   rz   r   rE   )r   ry   rz   rL   r&   r)   s   &$$*,r   rE   GinIndex.__init__   s"     %&<#+00r   c                   < \         SV `  4       w  rpV P                  e   V P                  VR&   V P                  e   V P                  VR&   WV3# )Nry   rz   )r   rO   ry   rz   rP   s   &   r   rO   GinIndex.deconstruct   sU    "W02F??&#'??F< &&2/3/J/JF+,6!!r   c                    . pV P                   e#   VP                  RV P                   ,          4       V P                  e-   TP                  RV P                  '       d   RMR,          4       V# )Nzgin_pending_list_limit = %dzfastupdate = %sri   rj   )rz   rZ   ry   r]   s   & r   r!   GinIndex.get_with_params   s`    &&2-0K0KK ??&0DOOODQVWXr   )ry   rz   r_   r8   s   @@r   r
   r
      s.     F1'+1DH1" r   c                   T   a a ] tR t^t oRtRRRR/V 3R lltV 3R ltR tRtVt	V ;t
# )	r   gist	bufferingNrn   c               @   < Wn         W n        \        SV `  ! V/ VB  R # r   )r   rn   r   rE   )r   r   rn   rL   r&   r)   s   &$$*,r   rE   GistIndex.__init__   s    "$+00r   c                   < \         SV `  4       w  rpV P                  e   V P                  VR&   V P                  e   V P                  VR&   WV3# )Nr   rn   )r   rO   r   rn   rP   s   &   r   rO   GistIndex.deconstruct   sP    "W02F>>%"&..F;??&#'??F< 6!!r   c                    . pV P                   e-   TP                  RV P                   '       d   RMR,          4       V P                  e#   VP                  RV P                  ,          4       V# )Nzbuffering = %sri   rj   ru   )r   rZ   rn   r]   s   & r   r!   GistIndex.get_with_params   sW    >>%/4>>>4uUV??&04??BCr   )r   rn   r_   r8   s   @@r   r   r      s,     F1t 1 1
" r   c                   P   a a ] tR t^t oRtRR/V 3R lltV 3R ltR tRtVt	V ;t
# )r   hashrn   Nc               4   < Wn         \        SV `  ! V/ VB  R # r   rn   r   rE   r   rn   rL   r&   r)   s   &$*,r   rE   HashIndex.__init__       $+00r   c                h   < \         SV `  4       w  rpV P                  e   V P                  VR&   WV3# Nrn   r   rO   rn   rP   s   &   r   rO   HashIndex.deconstruct   8    "W02F??&#'??F< 6!!r   c                j    . pV P                   e#   VP                  RV P                   ,          4       V# Nru   rn   rZ   r]   s   & r   r!   HashIndex.get_with_params   /    ??&04??BCr   rn   r_   r8   s   @@r   r   r      s%     F1 1" r   c                   P   a a ] tR t^t oRtRR/V 3R lltV 3R ltR tRtVt	V ;t
# )r   spgistrn   Nc               4   < Wn         \        SV `  ! V/ VB  R # r   r   r   s   &$*,r   rE   SpGistIndex.__init__   r   r   c                h   < \         SV `  4       w  rpV P                  e   V P                  VR&   WV3# r   r   rP   s   &   r   rO   SpGistIndex.deconstruct   r   r   c                j    . pV P                   e#   VP                  RV P                   ,          4       V# r   r   r]   s   & r   r!   SpGistIndex.get_with_params   r   r   r   r_   r8   s   @@r   r   r      s%     F1 1" r   c                   :   a a ] tR t^t oRtRtV 3R ltRtVtV ;t	# )OpClassz%(expressions)s %(name)sFc                (   < \         SV `  WR 7       R# ))nameN)r   rE   )r   
expressionr   r)   s   &&&r   rE   OpClass.__init__   s    /r   r,   )
r1   r2   r3   r4   template constraint_validation_compatiblerE   r5   r6   r7   r8   s   @@r   r   r      s     )H',$0 0r   r   N)r   r   r	   r
   r   r   r   )django.db.modelsr   r   django.utils.functionalr   utilsr   __all__r   r   r   r	   r
   r   r   r   r   r,   r   r   <module>r      s    ( 3 ./ :& &R > 6} : 2 (- (0d 0r   