ó
    Eñi²
  ã                  ó  • S r SSKJr  SSKJr  SSKJr  SSKJr  \S   r	\ " S S\5      5       r
\" \
5      r\" \5       V Vs0 s H  u  pX_M	     snn r\
 Vs/ s H  o"\
R                  Ld  M  UPM     snrg	s  snn f s  snf )
a"  
Scope definition and related utilities.

Those are defined here, instead of in the 'fixtures' module because
their use is spread across many other pytest modules, and centralizing it in 'fixtures'
would cause circular references.

Also this makes the module light to import, as it should.
é    )Úannotations)ÚEnum)Útotal_ordering)ÚLiteral)ÚsessionÚpackageÚmoduleÚclassÚfunctionc                  ór   • \ rS rSrSrSrSrSrSrSr	SS jr
SS	 jrSS
 jr\ S       SS jj5       rSrg)ÚScopeé   zÔ
Represents one of the possible fixture scopes in pytest.

Scopes are ordered from lower to higher, that is:

          ->>> higher ->>>

Function < Class < Module < Package < Session

          <<<- lower  <<<-
r   r
   r	   r   r   c                óT   • [         U    nUS:X  a  [        U  S35      e[        US-
     $ )zReturn the next lower scope.r   z is the lower-most scopeé   )Ú_SCOPE_INDICESÚ
ValueErrorÚ_ALL_SCOPES©ÚselfÚindexs     ÚJ/home/mande/repo/quber/.venv/lib/python3.13/site-packages/_pytest/scope.pyÚ
next_lowerÚScope.next_lower*   s5   € ä˜tÑ$ˆØ�A‹:Ü ˜vÐ%=Ð>Ó?Ð?Ü˜5 1™9Ñ%Ð%ó    c                ót   • [         U    nU[        [         5      S-
  :X  a  [        U  S35      e[        US-      $ )zReturn the next higher scope.r   z is the upper-most scope)r   Úlenr   r   r   s     r   Únext_higherÚScope.next_higher1   s@   € ä˜tÑ$ˆØ”CœÓ'¨!Ñ+Ó+Ü ˜vÐ%=Ð>Ó?Ð?Ü˜5 1™9Ñ%Ð%r   c                ó.   • [         U    n[         U   nX#:  $ ©N)r   )r   ÚotherÚ
self_indexÚother_indexs       r   Ú__lt__ÚScope.__lt__8   s   € Ü# DÑ)ˆ
Ü$ UÑ+ˆØÑ'Ð'r   Nc           	     ó”   • SSK Jn   [        U5      nU$ ! [         a(    U" SR	                  X#(       a  SU S3OSU5      SS9   W$ f = f)	zö
Given a scope name from the user, return the equivalent Scope enum. Should be used
whenever we want to convert a user provided scope name to its enum object.

If the scope name is invalid, construct a user friendly message and call pytest.fail.
r   )Úfailz'{} {}got an unexpected scope value '{}'zfrom Ú Ú F)Úpytrace)Ú_pytest.outcomesr'   r   r   Úformat)ÚclsÚ
scope_nameÚdescrÚwherer'   Úscopes         r   Ú	from_userÚScope.from_user=   sd   € õ 	*ð		ä˜*Ó%ˆEð ˆøô ó 	ÙØ9×@Ñ@Ø­u˜U 5 '¨Ñ+¸"¸jóð ó	ð ˆð	ús   ˆ •.AÁA© )Úreturnr   )r!   r   r5   Úboolr    )r.   Ú
_ScopeNamer/   Ústrr0   z
str | Noner5   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚFunctionÚClassÚModuleÚPackageÚSessionr   r   r$   Úclassmethodr2   Ú__static_attributes__r4   r   r   r   r      sh   † ñ
ð €HØ€EØ€FØ€GØ€Gô&ô&ô(ð
 àEIðØ#ðØ,/ðØ8Bðà	ôó ór   r   N)r=   Ú
__future__r   Úenumr   Ú	functoolsr   Útypingr   r7   r   Úlistr   Ú	enumerater   r>   ÚHIGH_SCOPES)r   r1   Úxs   000r   Ú<module>rM      s•   ðñõ #å Ý $Ý ð ÐHÑI€
ð ô=ˆDó =ó ð=ñ@ �5‹k€Ù3<¸[Ô3IÔJÒ3I¡< 5�%’,Ñ3IÒJ€ñ  Ó;š%�Q¨E¯N©NÐ#:�q™%Ñ;�ùó	 Kùò <s   ÁA9ÁA?Á/A?