ó
    Ð]j  ã                   ó’   • S r SSKrSSKJr  SSKJr  SSKJr  SSKJ	r	  \
" 5       r " S S\5      rS	 rS
 rS rS rS rS rSS jrg)ap  
This module is here for string completions. This means mostly stuff where
strings are returned, like `foo = dict(bar=3); foo["ba` would complete to
`"bar"]`.

It however does the same for numbers. The difference between string completions
and other completions is mostly that this module doesn't return defined
names in a module, but pretty much an arbitrary string.
é    N)ÚAbstractArbitraryName)Úinfer_call_of_leaf)Ú
Completion)Úcut_value_at_positionc                   ó   • \ rS rSrSrSrSrg)Ú
StringNameé   ÚstringF© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Úapi_typeÚis_value_nameÚ__static_attributes__r   ó    ÚM/home/mande/repo/quber/.venv/lib/python3.13/site-packages/jedi/api/strings.pyr   r      s   † Ø€HØƒMr   r   c           
      óv  • UnUS:w  a  UR                  5       nSnU(       a  [        XAUSS9nUS:X  a†  Uc  X&La  [        X#5      nU R                  U5      nUR                  5       =pšU	S;   a  U	R                  n	U	R
                  S;   a0  [        XŠ5      n[        [        U R                  UUc  SOUUUS95      $ / $ )NÚ[Ú T)Úinvert_result)Ú)Ú]Ú})ÚatomÚtrailerÚname)Úfuzzy)
Úget_previous_leafÚget_quote_endingr   Úcreate_contextÚparentÚtyper   ÚlistÚ_completions_for_dictsÚinference_state)Úmodule_contextÚ
code_linesÚleafÚpositionr
   r   Úbracket_leafÚcut_end_quoteÚcontextÚbefore_nodeÚbefore_bracket_leafÚvaluess               r   Úcomplete_dictr2      sÔ   € Ø€LØ�sÓØ×-Ñ-Ó/ˆà€MÞÜ(¨¸XÐUYÑZˆà�sÓØ‰>˜dÒ6Ü*¨4Ó:ˆFà ×/Ñ/°Ó=ˆà,8×,JÑ,JÓ,LÐLˆØ˜/Ó)Ø%×,Ñ,ˆKØ×ÑÐ:Ó:Ü'¨ÓEˆFÜÔ.Ø×.Ñ.ØØ‘n‘¨&ØØñó ð ð €Ir   c           	   #   óú   #   • [        [        U5      S S9 H_  n[        X%5      nUR                  U5      (       d  M&  [	        XS [        U5      * =(       d    S  5      n[        U US [        U5      US9v •  Ma     g 7f)Nc                 ó   • [        U 5      $ )N)Úrepr)Úxs    r   Ú<lambda>Ú(_completions_for_dicts.<locals>.<lambda>8   s   € Ä$ÀqÄ'r   )Úkey)ÚstackÚlike_name_lengthÚis_fuzzy)ÚsortedÚ_get_python_keysÚ_create_repr_stringÚ
startswithr   Úlenr   )r'   ÚdictsÚliteral_stringr-   r   Údict_keyÚdict_key_strr   s           r   r&   r&   7   sz   é € ÜÔ+¨EÓ2Ñ8IÔJˆÜ*¨>ÓDˆØ×"Ñ" >×2Ó2Ü˜oÐ<X¼cÀ-Ó>PÐ=P×=XÐTXÐ/YÓZˆDÜØØØÜ!$ ^Ó!4Øñô ò	 Kùs
   ‚7A;½>A;c                 óÈ   • [        U[        [        45      (       a  U (       d  [        U5      $ [        U5      n[	        U 5      u  p4Uc  U$ XBS   :X  a  X2-   $ X4-   USS -   U-   $ )Nr   é   éÿÿÿÿ)Ú
isinstanceÚstrÚbytesr5   Ú_get_string_prefix_and_quote)rC   rD   ÚrÚprefixÚquotes        r   r?   r?   E   sg   € Ü�h¤¤e ×-Ñ-¶^Ü�H‹~ÐäˆX‹€AÜ0°Ó@�M€FØ�}ØˆØ�!‘ƒ}Ø‰zÐØ‰>˜A˜a ˜GÑ# eÑ+Ð+r   c              #   ó´   #   • U  HN  nUR                   S:X  d  M  UR                  5        H%  nUR                  [        S9nU[        Ld  M!  Uv •  M'     MP     g 7f)NÚdict)Údefault)Ú
array_typeÚget_key_valuesÚget_safe_valueÚ	_sentinel)rB   Údctr9   rD   s       r   r>   r>   R   sN   é € ÛˆØ�>‰>˜VÕ#Ø×)Ñ)Ö+�Ø×-Ñ-´iÐ-Ð@�Ø¤9Ô,Ø"”Nó ,ò ùs   ‚Aš-AÁAc                 ó|   • [         R                  " SU 5      nUc  gUR                  S5      UR                  S5      4$ )Nz(\w*)("""|\'{3}|"|\'))NNrG   é   )ÚreÚmatchÚgroup)r
   r[   s     r   rL   rL   [   s6   € Ü�HŠHÐ-¨vÓ6€EØ�}ØØ�;‰;�q‹>˜5Ÿ;™; q›>Ð)Ð)r   c                 óH   • XS   S-
     US   US   [        U5      -    nX1:H  $ )Nr   rG   )rA   )r)   rO   r+   r
   s       r   Ú_matches_quote_at_positionr^   b   s2   € Ø ™ a™Ñ(¨°!©°X¸a±[Ä3ÀuÃ:Ñ5MÐN€FØ‰?Ðr   c                 óJ   • [        U 5      u  pEUc  g[        XU5      U:w  a  gU$ )Nr   )rL   r^   )r
   r)   r+   r   Ú_rO   s         r   r!   r!   g   s/   € Ü+¨FÓ3�H€AØ�}Øô " *°XÓ>À-ÓOØØ€Lr   )F)Ú__doc__rZ   Újedi.inference.namesr   Újedi.inference.helpersr   Újedi.api.classesr   Újedi.parser_utilsr   ÚobjectrV   r   r2   r&   r?   r>   rL   r^   r!   r   r   r   Ú<module>rg      sR   ðñó 
å 6Ý 5Ý 'Ý 3á‹H€	ôÐ&ô ò
ò<ò
,ò#ò*òõ
r   