
    Ph                        d dl mZ d dlmZmZmZmZmZ d dlZdgZ	 ed      Z
 G d d eej                  j                         ee            Z G d d	ej                  j                  ee
   e
      Zy)    )annotations)castCallableGenericTypeTypeVarNAwaitWc                      e Zd Zy)_PyAwaitMetaN)__name__
__module____qualname__     aC:\Users\daisl\Desktop\realtime-object-detection\venv\Lib\site-packages\torch/_awaits/__init__.pyr   r      s    r   r   c                      e Zd ZdZy)_AwaitaC  
    Wrapper around a ``torch._C.Await`` which encapsulates delayed execution
    of a callable. All manipulations happen with functions ``torch.jit._awaitable``,
    ``torch.jit._awaitable_wait``, ``torch.jit._awaitable_nowait``.

    Torch scriptable manipulations:
    ``torch.jit._awaitable(func, *args)``
    Creates ``Await[W]`` object, where W is return type of func.

    Returns:
    ``torch.jit._awaitable_wait(Await[W])``
    Returns the result of the function, specified at ``_awaitable``,  with specified arguments.

    Returns:
        The result of type ``W`` of the function call. The result is owned by ``Await[W]``
        and returned on all following ``_awaitable_wait`` calls.


    ``torch.jit._awaitable_nowait(W)``
    Returns:
        Trivial ``Await[W]`` with specified result.


    Only in eager mode:
    ``fn() -> Callable[Tuple[Any], W]``
    Returns:
        Specified at ``_awaitable`` python function ``func``.

    ``args() -> Tuple[Any]``
    Returns:
        Specified at ``_awaitable`` python args.

    ``is_nowait() -> _bool``
    Returns:
        ``True`` if this object was created via ``_awaitable_nowait`` call (trivial `Await[W]`).

    In eager mode ``Await[W]`` can be used as ``W`` i.e. attributes of W can be called on ``Await[W]``,
    ``_awaitable_wait()`` call will be transparently added.
    N)r   r   r   __doc__r   r   r   r   r      s    &N 	r   r   )	metaclass)
__future__r   typingr   r   r   r   r   torch__all__r
   type_Cr   r   r   r   r   <module>r      s\    " 9 9 )CL	4($w- 	(	UXX__gajL (	r   