/snap/core24/1587/usr/lib/python3.12/asyncio/__pycache__
NameSizeModeActions
base_events.cpython-312.pyc866100644editdlrm
base_futures.cpython-312.pyc30860644editdlrm
base_subprocess.cpython-312.pyc161020644editdlrm
base_tasks.cpython-312.pyc40870644editdlrm
constants.cpython-312.pyc9550644editdlrm
coroutines.cpython-312.pyc37690644editdlrm
events.cpython-312.pyc367530644editdlrm
exceptions.cpython-312.pyc30810644editdlrm
format_helpers.cpython-312.pyc38650644editdlrm
futures.cpython-312.pyc172560644editdlrm
locks.cpython-312.pyc275020644editdlrm
log.cpython-312.pyc2810644editdlrm
mixins.cpython-312.pyc10360644editdlrm
proactor_events.cpython-312.pyc445580644editdlrm
protocols.cpython-312.pyc87820644editdlrm
queues.cpython-312.pyc119410644editdlrm
runners.cpython-312.pyc99360644editdlrm
selector_events.cpython-312.pyc631240644editdlrm
sslproto.cpython-312.pyc415470644editdlrm
staggered.cpython-312.pyc62400644editdlrm
streams.cpython-312.pyc333800644editdlrm
subprocess.cpython-312.pyc120960644editdlrm
taskgroups.cpython-312.pyc79270644editdlrm
tasks.cpython-312.pyc403710644editdlrm
threads.cpython-312.pyc12580644editdlrm
timeouts.cpython-312.pyc77970644editdlrm
transports.cpython-312.pyc140040644editdlrm
trsock.cpython-312.pyc50790644editdlrm
unix_events.cpython-312.pyc678140644editdlrm
windows_events.cpython-312.pyc415390644editdlrm
windows_utils.cpython-312.pyc73380644editdlrm
__init__.cpython-312.pyc14570644editdlrm
__main__.cpython-312.pyc51750644editdlrm
Edit: /snap/core24/1587/usr/lib/python3.12/asyncio/__pycache__/protocols.cpython-312.pyc (8782B)
Цi-~dZdZGddZGddeZGddeZGdd eZGd d eZd Zy )zAbstract Protocol base classes.) BaseProtocolProtocolDatagramProtocolSubprocessProtocolBufferedProtocolc,eZdZdZdZdZdZdZdZy)ra Common base class for protocol interfaces. Usually user implements protocols that derived from BaseProtocol like Protocol or ProcessProtocol. The only case when BaseProtocol should be implemented directly is write-only transport like write pipe cy)zCalled when a connection is made. The argument is the transport representing the pipe connection. To receive data, wait for data_received() calls. When the connection is closed, connection_lost() is called. Nr)self transports (/usr/lib/python3.12/asyncio/protocols.pyconnection_madezBaseProtocol.connection_madecy)zCalled when the connection is lost or closed. The argument is an exception object or None (the latter meaning a regular EOF is received or the connection was aborted or closed). Nrr excs r connection_lostzBaseProtocol.connection_lostrrcy)aCalled when the transport's buffer goes over the high-water mark. Pause and resume calls are paired -- pause_writing() is called once when the buffer goes strictly over the high-water mark (even if subsequent writes increases the buffer size even more), and eventually resume_writing() is called once when the buffer size reaches the low-water mark. Note that if the buffer size equals the high-water mark, pause_writing() is not called -- it must go strictly over. Conversely, resume_writing() is called when the buffer size is equal or lower than the low-water mark. These end conditions are important to ensure that things go as expected when either mark is zero. NOTE: This is the only Protocol callback that is not called through EventLoop.call_soon() -- if it were, it would have no effect when it's most needed (when the app keeps writing without yielding until pause_writing() is called). Nrr s r pause_writingzBaseProtocol.pause_writing%rrcy)zvCalled when the transport's buffer drains below the low-water mark. See pause_writing() for details. Nrrs r resume_writingzBaseProtocol.resume_writing;rrN) __name__ __module__ __qualname____doc__ __slots__r rrrrrr rr s"I   , rrc eZdZdZdZdZdZy)ranInterface for stream protocol. The user should implement this interface. They can inherit from this class but don't need to. The implementations here do nothing (they don't raise exceptions). When the user wants to requests a transport, they pass a protocol factory to a utility function (e.g., EventLoop.create_connection()). When the connection is made successfully, connection_made() is called with a suitable transport object. Then data_received() will be called 0 or more times with data (bytes) received from the transport; finally, connection_lost() will be called exactly once with either an exception object or None as an argument. State machine of calls: start -> CM [-> DR*] [-> ER?] -> CL -> end * CM: connection_made() * DR: data_received() * ER: eof_received() * CL: connection_lost() rcy)zTCalled when some data is received. The argument is a bytes object. Nr)r datas r data_receivedzProtocol.data_received^rrcyzCalled when the other end calls write_eof() or equivalent. If this returns a false value (including None), the transport will close itself. If it returns a true value, closing the transport is up to the protocol. Nrrs r eof_receivedzProtocol.eof_receiveddrrN)rrrrrr!r$rrr rrBs2I  rrc&eZdZdZdZdZdZdZy)ra:Interface for stream protocol with manual buffer control. Event methods, such as `create_server` and `create_connection`, accept factories that return protocols that implement this interface. The idea of BufferedProtocol is that it allows to manually allocate and control the receive buffer. Event loops can then use the buffer provided by the protocol to avoid unnecessary data copies. This can result in noticeable performance improvement for protocols that receive big amounts of data. Sophisticated protocols can allocate the buffer only once at creation time. State machine of calls: start -> CM [-> GB [-> BU?]]* [-> ER?] -> CL -> end * CM: connection_made() * GB: get_buffer() * BU: buffer_updated() * ER: eof_received() * CL: connection_lost() rcy)aPCalled to allocate a new receive buffer. *sizehint* is a recommended minimal size for the returned buffer. When set to -1, the buffer size can be arbitrary. Must return an object that implements the :ref:`buffer protocol `. It is an error to return a zero-sized buffer. Nr)r sizehints r get_bufferzBufferedProtocol.get_bufferrrcy)zCalled when the buffer was updated with the received data. *nbytes* is the total number of bytes that were written to the buffer. Nr)r nbytess r buffer_updatedzBufferedProtocol.buffer_updatedrrcyr#rrs r r$zBufferedProtocol.eof_receivedrrN)rrrrrr(r+r$rrr rrms.I    rrc eZdZdZdZdZdZy)rz Interface for datagram protocol.rcy)z&Called when some datagram is received.Nr)r r addrs r datagram_receivedz"DatagramProtocol.datagram_receivedrrcy)z~Called when a send or receive operation raises an OSError. (Other than BlockingIOError or InterruptedError.) Nrrs r error_receivedzDatagramProtocol.error_receivedrrN)rrrrrr0r2rrr rrs*I5 rrc&eZdZdZdZdZdZdZy)rz,Interface for protocol for subprocess calls.rcy)zCalled when the subprocess writes data into stdout/stderr pipe. fd is int file descriptor. data is bytes object. Nr)r fdr s r pipe_data_receivedz%SubprocessProtocol.pipe_data_receivedrrcy)zCalled when a file descriptor associated with the child process is closed. fd is the int file descriptor that was closed. Nr)r r5rs r pipe_connection_lostz'SubprocessProtocol.pipe_connection_lostrrcy)z"Called when subprocess has exited.Nrrs r process_exitedz!SubprocessProtocol.process_exitedrrN)rrrrrr6r8r:rrr rrs6I  1rrct|}|rr|j|}t|}|s td||k\r||d||j|y|d||d||j|||d}t|}|rqyy)Nz%get_buffer() returned an empty buffer)lenr( RuntimeErrorr+)protor data_lenbufbuf_lens r _feed_data_to_buffered_protorBs4yH x(c(FG G h !C N   *  'NCM   )>D4yH rN)r__all__rrrrrrBrrr rDsQ%  6 6 r( |( V2 |2 j  |  11.!r