Your IP : 52.14.219.203
o
6��fe" � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddl Z ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZzddlZW n eyS dZY nw ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dd lmZ dd
lmZ ddlmZ ddlmZ dd
lmZ ddlmZ ddl m!Z! dZ"dZ#dZ$e%e d�Z&dZ'e(� Z)dd� Z*dd� Z+dd� Z,d-dd�Z-d.dd�Z.dd � Z/e%e d!�r�d"d#� Z0nd$d#� Z0d%d&� Z1G d'd(� d(ej2�Z3G d)d*� d*ej4�Z5G d+d,� d,ej6�Z7dS )/a� Base implementation of event loop.
The event loop can be broken up into a multiplexer (the part
responsible for notifying us of I/O events) and the event loop proper,
which wraps a multiplexer with functionality for scheduling callbacks,
immediately or at a given time in the future.
Whenever a public API takes a callback, subsequent positional
arguments will be passed to the callback if/when it is called. This
avoids the proliferation of trivial lambdas implementing closures.
Keyword arguments for the callback are not supported; this is a
conscious design decision, leaving the door open for keyword arguments
to modify the meaning of the API call itself.
� N� )� constants)�
coroutines)�events)�
exceptions)�futures)� protocols)�sslproto)� staggered)�tasks)�
transports)�trsock)�logger)�
BaseEventLoop�Server�d g �?�AF_INET6i�Q c C s, | j }tt|dd �tj�rt|j�S t| �S )N�__self__)Z _callback�
isinstance�getattrr �Task�reprr �str)�handle�cb� r �:/opt/alt/python310/lib64/python3.10/asyncio/base_events.py�_format_handleJ s
r c C s$ | t jkrdS | t jkrdS t| �S )Nz<pipe>z<stdout>)�
subprocess�PIPE�STDOUTr )�fdr r r �_format_pipeS s
r"