
    Zi                    t    d dl mZ d dlZd dlmc mZ d dlm	Z	 d dl
mZ ddlmZ ddlmZmZ  G d d	e      Zy)
    )annotationsN)abstractmethod)Signals   )AsyncResource)ByteReceiveStreamByteSendStreamc                      e Zd ZdZedd       Zedd       Zedd       Zedd       Ze	edd              Z
e	edd              Ze	edd              Ze	edd	              Ze	edd
              Zy)Processz5An asynchronous version of :class:`subprocess.Popen`.c                   K   yw)z^
        Wait until the process exits.

        :return: the exit code of the process
        N selfs    S/home/portmadness/app/.venv/lib/python3.12/site-packages/anyio/abc/_subprocesses.pywaitzProcess.wait   s     s   c                     y)z
        Terminates the process, gracefully if possible.

        On Windows, this calls ``TerminateProcess()``.
        On POSIX systems, this sends ``SIGTERM`` to the process.

        .. seealso:: :meth:`subprocess.Popen.terminate`
        Nr   r   s    r   	terminatezProcess.terminate           c                     y)z
        Kills the process.

        On Windows, this calls ``TerminateProcess()``.
        On POSIX systems, this sends ``SIGKILL`` to the process.

        .. seealso:: :meth:`subprocess.Popen.kill`
        Nr   r   s    r   killzProcess.kill    r   r   c                     y)z
        Send a signal to the subprocess.

        .. seealso:: :meth:`subprocess.Popen.send_signal`

        :param signal: the signal number (e.g. :data:`signal.SIGHUP`)
        Nr   )r   signals     r   send_signalzProcess.send_signal+   r   r   c                     y)zThe process ID of the process.Nr   r   s    r   pidzProcess.pid5   r   r   c                     y)zw
        The return code of the process. If the process has not yet terminated, this will
        be ``None``.
        Nr   r   s    r   
returncodezProcess.returncode:   r   r   c                     y)z1The stream for the standard input of the process.Nr   r   s    r   stdinzProcess.stdinB   r   r   c                     y)z2The stream for the standard output of the process.Nr   r   s    r   stdoutzProcess.stdoutG   r   r   c                     y)z8The stream for the standard error output of the process.Nr   r   s    r   stderrzProcess.stderrL   r   r   N)returnint)r%   None)r   r   r%   r'   )r%   z
int | None)r%   zByteSendStream | None)r%   zByteReceiveStream | None)__name__
__module____qualname____doc__r   r   r   r   r   propertyr   r   r    r"   r$   r   r   r   r   r   
   s    ?        -  -    @  @ A  A G  Gr   r   )
__future__r   builtins@py_builtins_pytest.assertion.rewrite	assertionrewrite
@pytest_arabcr   r   r   
_resourcesr   _streamsr   r	   r   r   r   r   <module>r7      s)    "      % 7EGm EGr   