§
    ¡”j	  ã            	       óÖ   — d Z ddlZddlmZ ddlmZ ddlmZ dZ		 dde
dej        ej                 d	ej        d
e
fd„Z	 dde
dej        ej                 d	ej        d
efd„Zde
d
efd„ZdS )zf

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

This module contains the very simple API provided by uritemplate.

é    N)Úvariable)Ú
OrderedSet)ÚURITemplate)r   r   ÚexpandÚpartialÚ	variablesÚuriÚvar_dictÚkwargsÚreturnc                 ó8   —  t          | ¦  «        j        |fi |¤ŽS )aq  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   r   ©r	   r
   r   s      ú^/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/uritemplate/api.pyr   r      s'   € ð2 #�;�sÑÔÔ" 8Ð6Ð6¨vÐ6Ð6Ð6ó    c                 ó8   —  t          | ¦  «        j        |fi |¤ŽS )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   r   r   s      r   r   r   /   s'   € ð( $�;�sÑÔÔ# HÐ7Ð7°Ð7Ð7Ð7r   c                 óD   — t          t          | ¦  «        j        ¦  «        S )ah  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   r   r   F   s   € õ  •k #Ñ&Ô&Ô5Ñ6Ô6Ð6r   )N)Ú__doc__ÚtypingÚtÚuritemplater   Úuritemplate.orderedsetr   Úuritemplate.templater   Ú__all__ÚstrÚOptionalÚVariableValueDictÚVariableValuer   r   r   © r   r   ú<module>r       s"  ððð ð Ð Ð Ð à  Ð  Ð  Ð  Ð  Ð  Ø -Ð -Ð -Ð -Ð -Ð -Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,à
I€ð
 8<ð7ð 7Ø	ð7àŒj˜Ô3Ô4ð7ð Ô$ð7ð 	ð	7ð 7ð 7ð 7ð< 8<ð8ð 8Ø	ð8àŒj˜Ô3Ô4ð8ð Ô$ð8ð ð	8ð 8ð 8ð 8ð.7�3ð 7˜:ð 7ð 7ð 7ð 7ð 7ð 7r   