+
    ÃHàj	  ã                   óf   € R t ^ RIt^ RIHt ^ RIHt ^ RIHt Rt	RR R llt
RR R lltR	 R
 ltR# )zf

uritemplate.api
===============

This module contains the very simple API provided by uritemplate.

N)Úvariable)Ú
OrderedSet)ÚURITemplatec                óš   € V ^8„  d   QhR\         R\        P                  \        P                  ,          R\        P
                  R\         /# ©é   ÚuriÚvar_dictÚkwargsÚreturn)ÚstrÚtÚOptionalr   ÚVariableValueDictÚVariableValue)Úformats   "Ú‘/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/50f6b671e3f94b538e344231dfcb664f/venv/lib/python3.14/site-packages/uritemplate/api.pyÚ__annotate__r      sE   € ÷ 7ñ 7Ü	ð7ä�j‰jœ×3Ñ3Õ4ð7ô ×$Ñ$ð7ô 	ñ	7ó    c                ó:   € \        V 4      P                  ! V3/ VB # )aA  Expand the template with the given parameters.

:param str uri: The templated URI to expand
:param dict var_dict: Optional dictionary with variables and values
:param kwargs: Alternative way to pass arguments
:returns: str

Example::

    expand('https://api.github.com{/end}', {'end': 'users'})
    expand('https://api.github.com{/end}', end='gists')

.. note:: Passing values by both parts, may override values in
          ``var_dict``. For example::

              expand('https://{var}', {'var': 'val1'}, var='val2')

          ``val2`` will be used instead of ``val1``.

)r   Úexpand©r   r	   r
   s   &&,r   r   r      s   € ô2 �sÓ×"Ò" 8Ñ6¨vÑ6Ð6r   c                óš   € V ^8„  d   QhR\         R\        P                  \        P                  ,          R\        P
                  R\        /# r   )r   r   r   r   r   r   r   )r   s   "r   r   r   /   sE   € ÷ 8ñ 8Ü	ð8ä�j‰jœ×3Ñ3Õ4ð8ô ×$Ñ$ð8ô ñ	8r   c                ó:   € \        V 4      P                  ! V3/ VB # )a±  Partially expand the template with the given parameters.

If all of the parameters for the template are not given, return a
partially expanded template.

:param dict var_dict: Optional dictionary with variables and values
:param kwargs: Alternative way to pass arguments
:returns: :class:`URITemplate`

Example::

    t = URITemplate('https://api.github.com{/end}')
    t.partial()  # => URITemplate('https://api.github.com{/end}')

)r   Úpartialr   s   &&,r   r   r   /   s   € ô( �sÓ×#Ò# HÑ7°Ñ7Ð7r   c                ó0   € V ^8„  d   QhR\         R\        /# )r   r   r   )r   r   )r   s   "r   r   r   F   s   € ÷ 7ñ 7”3ð 7œ:ñ 7r   c                ó>   € \        \        V 4      P                  4      # )aD  Parse the variables of the template.

This returns all of the variable names in the URI Template.

:returns: Set of variable names
:rtype: set

Example::

    variables('https://api.github.com{/end})
    # => {'end'}
    variables('https://api.github.com/repos{/username}{/repository}')
    # => {'username', 'repository'}

)r   r   Úvariable_names)r   s   &r   Ú	variablesr   F   s   € ô  ”k #Ó&×5Ñ5Ó6Ð6r   )r   r   r   r   r   )N)Ú__doc__Útypingr   Úuritemplater   Úuritemplate.orderedsetr   Úuritemplate.templater   Ú__all__r   r   r   © r   r   Ú<module>r&      s,   ðñó å  Ý -Ý ,à
I€÷7÷88÷.7r   