Current Dir: /snap/core22/2955/usr/lib/python3.10/__pycache__/
[FILE] abc.cpython-310.pyc [ edit | delete | rename ]
[FILE] aifc.cpython-310.pyc [ edit | delete | rename ]
[FILE] antigravity.cpython-310.pyc [ edit | delete | rename ]
[FILE] argparse.cpython-310.pyc [ edit | delete | rename ]
[FILE] ast.cpython-310.pyc [ edit | delete | rename ]
[FILE] asynchat.cpython-310.pyc [ edit | delete | rename ]
[FILE] asyncore.cpython-310.pyc [ edit | delete | rename ]
[FILE] base64.cpython-310.pyc [ edit | delete | rename ]
[FILE] bdb.cpython-310.pyc [ edit | delete | rename ]
[FILE] binhex.cpython-310.pyc [ edit | delete | rename ]
[FILE] bisect.cpython-310.pyc [ edit | delete | rename ]
[FILE] bz2.cpython-310.pyc [ edit | delete | rename ]
[FILE] calendar.cpython-310.pyc [ edit | delete | rename ]
[FILE] cgi.cpython-310.pyc [ edit | delete | rename ]
[FILE] cgitb.cpython-310.pyc [ edit | delete | rename ]
[FILE] chunk.cpython-310.pyc [ edit | delete | rename ]
[FILE] cmd.cpython-310.pyc [ edit | delete | rename ]
[FILE] code.cpython-310.pyc [ edit | delete | rename ]
[FILE] codecs.cpython-310.pyc [ edit | delete | rename ]
[FILE] codeop.cpython-310.pyc [ edit | delete | rename ]
[FILE] colorsys.cpython-310.pyc [ edit | delete | rename ]
[FILE] compileall.cpython-310.pyc [ edit | delete | rename ]
[FILE] configparser.cpython-310.pyc [ edit | delete | rename ]
[FILE] contextlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] contextvars.cpython-310.pyc [ edit | delete | rename ]
[FILE] copy.cpython-310.pyc [ edit | delete | rename ]
[FILE] copyreg.cpython-310.pyc [ edit | delete | rename ]
[FILE] cProfile.cpython-310.pyc [ edit | delete | rename ]
[FILE] crypt.cpython-310.pyc [ edit | delete | rename ]
[FILE] csv.cpython-310.pyc [ edit | delete | rename ]
[FILE] dataclasses.cpython-310.pyc [ edit | delete | rename ]
[FILE] datetime.cpython-310.pyc [ edit | delete | rename ]
[FILE] decimal.cpython-310.pyc [ edit | delete | rename ]
[FILE] difflib.cpython-310.pyc [ edit | delete | rename ]
[FILE] dis.cpython-310.pyc [ edit | delete | rename ]
[FILE] doctest.cpython-310.pyc [ edit | delete | rename ]
[FILE] enum.cpython-310.pyc [ edit | delete | rename ]
[FILE] filecmp.cpython-310.pyc [ edit | delete | rename ]
[FILE] fileinput.cpython-310.pyc [ edit | delete | rename ]
[FILE] fnmatch.cpython-310.pyc [ edit | delete | rename ]
[FILE] fractions.cpython-310.pyc [ edit | delete | rename ]
[FILE] ftplib.cpython-310.pyc [ edit | delete | rename ]
[FILE] functools.cpython-310.pyc [ edit | delete | rename ]
[FILE] genericpath.cpython-310.pyc [ edit | delete | rename ]
[FILE] getopt.cpython-310.pyc [ edit | delete | rename ]
[FILE] getpass.cpython-310.pyc [ edit | delete | rename ]
[FILE] gettext.cpython-310.pyc [ edit | delete | rename ]
[FILE] glob.cpython-310.pyc [ edit | delete | rename ]
[FILE] graphlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] gzip.cpython-310.pyc [ edit | delete | rename ]
[FILE] hashlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] heapq.cpython-310.pyc [ edit | delete | rename ]
[FILE] hmac.cpython-310.pyc [ edit | delete | rename ]
[FILE] imaplib.cpython-310.pyc [ edit | delete | rename ]
[FILE] imghdr.cpython-310.pyc [ edit | delete | rename ]
[FILE] imp.cpython-310.pyc [ edit | delete | rename ]
[FILE] inspect.cpython-310.pyc [ edit | delete | rename ]
[FILE] io.cpython-310.pyc [ edit | delete | rename ]
[FILE] ipaddress.cpython-310.pyc [ edit | delete | rename ]
[FILE] keyword.cpython-310.pyc [ edit | delete | rename ]
[FILE] linecache.cpython-310.pyc [ edit | delete | rename ]
[FILE] locale.cpython-310.pyc [ edit | delete | rename ]
[FILE] lzma.cpython-310.pyc [ edit | delete | rename ]
[FILE] mailbox.cpython-310.pyc [ edit | delete | rename ]
[FILE] mailcap.cpython-310.pyc [ edit | delete | rename ]
[FILE] mimetypes.cpython-310.pyc [ edit | delete | rename ]
[FILE] modulefinder.cpython-310.pyc [ edit | delete | rename ]
[FILE] netrc.cpython-310.pyc [ edit | delete | rename ]
[FILE] nntplib.cpython-310.pyc [ edit | delete | rename ]
[FILE] ntpath.cpython-310.pyc [ edit | delete | rename ]
[FILE] nturl2path.cpython-310.pyc [ edit | delete | rename ]
[FILE] numbers.cpython-310.pyc [ edit | delete | rename ]
[FILE] opcode.cpython-310.pyc [ edit | delete | rename ]
[FILE] operator.cpython-310.pyc [ edit | delete | rename ]
[FILE] optparse.cpython-310.pyc [ edit | delete | rename ]
[FILE] os.cpython-310.pyc [ edit | delete | rename ]
[FILE] pathlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] pdb.cpython-310.pyc [ edit | delete | rename ]
[FILE] pickle.cpython-310.pyc [ edit | delete | rename ]
[FILE] pickletools.cpython-310.pyc [ edit | delete | rename ]
[FILE] pipes.cpython-310.pyc [ edit | delete | rename ]
[FILE] pkgutil.cpython-310.pyc [ edit | delete | rename ]
[FILE] platform.cpython-310.pyc [ edit | delete | rename ]
[FILE] plistlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] poplib.cpython-310.pyc [ edit | delete | rename ]
[FILE] posixpath.cpython-310.pyc [ edit | delete | rename ]
[FILE] pprint.cpython-310.pyc [ edit | delete | rename ]
[FILE] profile.cpython-310.pyc [ edit | delete | rename ]
[FILE] pstats.cpython-310.pyc [ edit | delete | rename ]
[FILE] pty.cpython-310.pyc [ edit | delete | rename ]
[FILE] pyclbr.cpython-310.pyc [ edit | delete | rename ]
[FILE] pydoc.cpython-310.pyc [ edit | delete | rename ]
[FILE] py_compile.cpython-310.pyc [ edit | delete | rename ]
[FILE] queue.cpython-310.pyc [ edit | delete | rename ]
[FILE] quopri.cpython-310.pyc [ edit | delete | rename ]
[FILE] random.cpython-310.pyc [ edit | delete | rename ]
[FILE] re.cpython-310.pyc [ edit | delete | rename ]
[FILE] reprlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] rlcompleter.cpython-310.pyc [ edit | delete | rename ]
[FILE] runpy.cpython-310.pyc [ edit | delete | rename ]
[FILE] sched.cpython-310.pyc [ edit | delete | rename ]
[FILE] secrets.cpython-310.pyc [ edit | delete | rename ]
[FILE] selectors.cpython-310.pyc [ edit | delete | rename ]
[FILE] shelve.cpython-310.pyc [ edit | delete | rename ]
[FILE] shlex.cpython-310.pyc [ edit | delete | rename ]
[FILE] shutil.cpython-310.pyc [ edit | delete | rename ]
[FILE] signal.cpython-310.pyc [ edit | delete | rename ]
[FILE] site.cpython-310.pyc [ edit | delete | rename ]
[FILE] sitecustomize.cpython-310.pyc [ edit | delete | rename ]
[FILE] smtpd.cpython-310.pyc [ edit | delete | rename ]
[FILE] smtplib.cpython-310.pyc [ edit | delete | rename ]
[FILE] sndhdr.cpython-310.pyc [ edit | delete | rename ]
[FILE] socket.cpython-310.pyc [ edit | delete | rename ]
[FILE] socketserver.cpython-310.pyc [ edit | delete | rename ]
[FILE] sre_compile.cpython-310.pyc [ edit | delete | rename ]
[FILE] sre_constants.cpython-310.pyc [ edit | delete | rename ]
[FILE] sre_parse.cpython-310.pyc [ edit | delete | rename ]
[FILE] ssl.cpython-310.pyc [ edit | delete | rename ]
[FILE] stat.cpython-310.pyc [ edit | delete | rename ]
[FILE] statistics.cpython-310.pyc [ edit | delete | rename ]
[FILE] string.cpython-310.pyc [ edit | delete | rename ]
[FILE] stringprep.cpython-310.pyc [ edit | delete | rename ]
[FILE] struct.cpython-310.pyc [ edit | delete | rename ]
[FILE] subprocess.cpython-310.pyc [ edit | delete | rename ]
[FILE] sunau.cpython-310.pyc [ edit | delete | rename ]
[FILE] symtable.cpython-310.pyc [ edit | delete | rename ]
[FILE] sysconfig.cpython-310.pyc [ edit | delete | rename ]
[FILE] tabnanny.cpython-310.pyc [ edit | delete | rename ]
[FILE] tarfile.cpython-310.pyc [ edit | delete | rename ]
[FILE] telnetlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] tempfile.cpython-310.pyc [ edit | delete | rename ]
[FILE] textwrap.cpython-310.pyc [ edit | delete | rename ]
[FILE] this.cpython-310.pyc [ edit | delete | rename ]
[FILE] threading.cpython-310.pyc [ edit | delete | rename ]
[FILE] timeit.cpython-310.pyc [ edit | delete | rename ]
[FILE] token.cpython-310.pyc [ edit | delete | rename ]
[FILE] tokenize.cpython-310.pyc [ edit | delete | rename ]
[FILE] trace.cpython-310.pyc [ edit | delete | rename ]
[FILE] traceback.cpython-310.pyc [ edit | delete | rename ]
[FILE] tracemalloc.cpython-310.pyc [ edit | delete | rename ]
[FILE] tty.cpython-310.pyc [ edit | delete | rename ]
[FILE] turtle.cpython-310.pyc [ edit | delete | rename ]
[FILE] types.cpython-310.pyc [ edit | delete | rename ]
[FILE] typing.cpython-310.pyc [ edit | delete | rename ]
[FILE] uu.cpython-310.pyc [ edit | delete | rename ]
[FILE] uuid.cpython-310.pyc [ edit | delete | rename ]
[FILE] warnings.cpython-310.pyc [ edit | delete | rename ]
[FILE] wave.cpython-310.pyc [ edit | delete | rename ]
[FILE] weakref.cpython-310.pyc [ edit | delete | rename ]
[FILE] webbrowser.cpython-310.pyc [ edit | delete | rename ]
[FILE] xdrlib.cpython-310.pyc [ edit | delete | rename ]
[FILE] zipapp.cpython-310.pyc [ edit | delete | rename ]
[FILE] zipfile.cpython-310.pyc [ edit | delete | rename ]
[FILE] zipimport.cpython-310.pyc [ edit | delete | rename ]
[FILE] _aix_support.cpython-310.pyc [ edit | delete | rename ]
[FILE] _bootsubprocess.cpython-310.pyc [ edit | delete | rename ]
[FILE] _collections_abc.cpython-310.pyc [ edit | delete | rename ]
[FILE] _compat_pickle.cpython-310.pyc [ edit | delete | rename ]
[FILE] _compression.cpython-310.pyc [ edit | delete | rename ]
[FILE] _distutils_system_mod.cpython-310.pyc [ edit | delete | rename ]
[FILE] _markupbase.cpython-310.pyc [ edit | delete | rename ]
[FILE] _osx_support.cpython-310.pyc [ edit | delete | rename ]
[FILE] _pydecimal.cpython-310.pyc [ edit | delete | rename ]
[FILE] _pyio.cpython-310.pyc [ edit | delete | rename ]
[FILE] _py_abc.cpython-310.pyc [ edit | delete | rename ]
[FILE] _sitebuiltins.cpython-310.pyc [ edit | delete | rename ]
[FILE] _strptime.cpython-310.pyc [ edit | delete | rename ]
[FILE] _sysconfigdata__linux_x86_64-linux-gnu.cpython-310.pyc [ edit | delete | rename ]
[FILE] _sysconfigdata__x86_64-linux-gnu.cpython-310.pyc [ edit | delete | rename ]
[FILE] _threading_local.cpython-310.pyc [ edit | delete | rename ]
[FILE] _weakrefset.cpython-310.pyc [ edit | delete | rename ]
[FILE] __future__.cpython-310.pyc [ edit | delete | rename ]
[FILE] __phello__.foo.cpython-310.pyc [ edit | delete | rename ]
Viewing: /snap/core22/2955/usr/lib/python3.10/__pycache__/asynchat.cpython-310.pyc
o
�9j - � @ s^ d Z ddlZddlmZ ddlmZ ededd� G dd � d ej�ZG d
d� d�Z dd
� Z
dS )a� A class supporting chat-style (command/response) protocols.
This class adds support for 'chat' style protocols - where one side
sends a 'command', and the other sends a response (examples would be
the common internet protocols - smtp, nntp, ftp, etc..).
The handle_read() method looks at the input stream for the current
'terminator' (usually '\r\n' for single-line responses, '\r\n.\r\n'
for multi-line output), calling self.found_terminator() on its
receipt.
for example:
Say you build an async nntp client using this class. At the start
of the connection, you'll have self.terminator set to '\r\n', in
order to process the single-line greeting. Just before issuing a
'LIST' command you'll set it to '\r\n.\r\n'. The output of the LIST
command will be accumulated (using your own 'collect_incoming_data'
method) up to the terminator, and then control will be returned to
you - by calling your self.found_terminator() method.
� N)�deque)�warnzlThe asynchat module is deprecated and will be removed in Python 3.12. The recommended replacement is asyncio� )�
stacklevelc @ s� e Zd ZdZdZdZdZdZd(dd�Zdd � Z d
d� Z
dd
� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� ZdS ))�
async_chatz�This is an abstract class. You must derive from this class, and add
the two methods collect_incoming_data() and found_terminator()i r zlatin-1Nc C s( d| _ g | _t� | _tj�| ||� d S �N� )�ac_in_buffer�incomingr �
producer_fifo�asyncore�
dispatcher�__init__)�self�sock�map� r �/usr/lib/python3.10/asynchat.pyr K s zasync_chat.__init__c C � t d���Nzmust be implemented in subclass��NotImplementedError�r �datar r r �collect_incoming_dataY � z async_chat.collect_incoming_datac C s | j �|� d S �N)r
�appendr r r r �_collect_incoming_data\ s z!async_chat._collect_incoming_datac C s d� | j�}| jd d �= |S r )�joinr
)r �dr r r � _get_data_ s zasync_chat._get_datac C r r r �r r r r �found_terminatord r zasync_chat.found_terminatorc C sB t |t�r| jrt|| j�}n
t |t�r|dk rtd��|| _dS )zdSet the input delimiter.
Can be a fixed string of any length, an integer, or None.
r z-the number of received bytes must be positiveN)�
isinstance�str�use_encoding�bytes�encoding�int�
ValueError�
terminator)r �termr r r �set_terminatorg s
zasync_chat.set_terminatorc C s | j S r )r+ r"