SILENT KILLERPanel

Current Path: > > opt > > alt > python313 > lib64 > > > python3.13 > asyncio


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt//alt/python313/lib64///python3.13/asyncio

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
__init__.py File 1220 bytes June 23 2025 14:28:17.
__main__.py File 6123 bytes June 23 2025 14:28:17.
base_events.py File 80245 bytes June 23 2025 14:28:17.
base_futures.py File 1974 bytes June 23 2025 14:28:17.
base_subprocess.py File 9677 bytes June 23 2025 14:28:17.
base_tasks.py File 2672 bytes June 23 2025 14:28:17.
constants.py File 1413 bytes June 23 2025 14:28:17.
coroutines.py File 3342 bytes June 23 2025 14:28:17.
events.py File 29786 bytes June 23 2025 14:28:17.
exceptions.py File 1752 bytes June 23 2025 14:28:17.
format_helpers.py File 2727 bytes June 23 2025 14:28:17.
futures.py File 14157 bytes June 23 2025 14:28:17.
locks.py File 20580 bytes June 23 2025 14:28:17.
log.py File 124 bytes June 23 2025 14:28:17.
mixins.py File 481 bytes June 23 2025 14:28:17.
proactor_events.py File 33495 bytes June 23 2025 14:28:17.
protocols.py File 6957 bytes June 23 2025 14:28:17.
queues.py File 10178 bytes June 23 2025 14:28:17.
runners.py File 7230 bytes June 23 2025 14:28:17.
selector_events.py File 48173 bytes June 23 2025 14:28:17.
sslproto.py File 31869 bytes June 23 2025 14:28:17.
staggered.py File 7077 bytes June 23 2025 14:28:17.
streams.py File 28481 bytes June 23 2025 14:28:17.
subprocess.py File 7737 bytes June 23 2025 14:28:17.
taskgroups.py File 10049 bytes June 23 2025 14:28:17.
tasks.py File 39757 bytes June 23 2025 14:28:17.
threads.py File 790 bytes June 23 2025 14:28:17.
timeouts.py File 6062 bytes June 23 2025 14:28:17.
transports.py File 10808 bytes June 23 2025 14:28:17.
trsock.py File 2475 bytes June 23 2025 14:28:17.
unix_events.py File 54416 bytes June 23 2025 14:28:17.
windows_events.py File 32630 bytes June 23 2025 14:28:17.
windows_utils.py File 5060 bytes June 23 2025 14:28:17.

Reading File: //opt//alt/python313/lib64///python3.13/asyncio/format_helpers.py

import functools
import inspect
import reprlib
import sys
import traceback

from . import constants


def _get_function_source(func):
    func = inspect.unwrap(func)
    if inspect.isfunction(func):
        code = func.__code__
        return (code.co_filename, code.co_firstlineno)
    if isinstance(func, functools.partial):
        return _get_function_source(func.func)
    if isinstance(func, functools.partialmethod):
        return _get_function_source(func.func)
    return None


def _format_callback_source(func, args, *, debug=False):
    func_repr = _format_callback(func, args, None, debug=debug)
    source = _get_function_source(func)
    if source:
        func_repr += f' at {source[0]}:{source[1]}'
    return func_repr


def _format_args_and_kwargs(args, kwargs, *, debug=False):
    """Format function arguments and keyword arguments.

    Special case for a single parameter: ('hello',) is formatted as ('hello').

    Note that this function only returns argument details when
    debug=True is specified, as arguments may contain sensitive
    information.
    """
    if not debug:
        return '()'

    # use reprlib to limit the length of the output
    items = []
    if args:
        items.extend(reprlib.repr(arg) for arg in args)
    if kwargs:
        items.extend(f'{k}={reprlib.repr(v)}' for k, v in kwargs.items())
    return '({})'.format(', '.join(items))


def _format_callback(func, args, kwargs, *, debug=False, suffix=''):
    if isinstance(func, functools.partial):
        suffix = _format_args_and_kwargs(args, kwargs, debug=debug) + suffix
        return _format_callback(func.func, func.args, func.keywords,
                                debug=debug, suffix=suffix)

    if hasattr(func, '__qualname__') and func.__qualname__:
        func_repr = func.__qualname__
    elif hasattr(func, '__name__') and func.__name__:
        func_repr = func.__name__
    else:
        func_repr = repr(func)

    func_repr += _format_args_and_kwargs(args, kwargs, debug=debug)
    if suffix:
        func_repr += suffix
    return func_repr


def extract_stack(f=None, limit=None):
    """Replacement for traceback.extract_stack() that only does the
    necessary work for asyncio debug mode.
    """
    if f is None:
        f = sys._getframe().f_back
    if limit is None:
        # Limit the amount of work to a reasonable amount, as extract_stack()
        # can be called for each coroutine and future in debug mode.
        limit = constants.DEBUG_STACK_DEPTH
    stack = traceback.StackSummary.extract(traceback.walk_stack(f),
                                           limit=limit,
                                           lookup_lines=False)
    stack.reverse()
    return stack

SILENT KILLER Tool