Python-Dateien

Neu laden
Gefunden: 162 Datei(en)
reprlib.py
# Source Generated with Decompyle++
# File: reprlib.pyc (Python 3.13)

__all__ = [
    'Repr',
    'repr',
    'recursive_repr']
import builtins
from itertools import islice
from _thread import get_ident

def recursive_repr(fillvalue = ('...',)):
    # MAKE_CELL(0)
    
    def decorating_function(user_function = None):
        # COPY_FREE_VARS(1)
        # MAKE_CELL(0)
        # MAKE_CELL(2)
        repr_running = set()
        
        def wrapper(self = None):
            # COPY_FREE_VARS(3)
            key = (id(self), get_ident())
            if key in repr_running:
                return fillvalue
            None.add(key)
            result = user_function(self)
            repr_running.discard(key)
            repr_running.discard(key)
            return result

        wrapper.__module__ = getattr(user_function, '__module__')
        wrapper.__doc__ = getattr(user_function, '__doc__')
        wrapper.__name__ = getattr(user_function, '__name__')
        wrapper.__qualname__ = getattr(user_function, '__qualname__')
        wrapper.__annotations__ = getattr(user_function, '__annotations__', { })
        return wrapper

    return decorating_function


class Repr:
    
    def __init__(self):
        self.fillvalue = '...'
        self.maxlevel = 6
        self.maxtuple = 6
        self.maxlist = 6
        self.maxarray = 5
        self.maxdict = 4
        self.maxset = 6
        self.maxfrozenset = 6
        self.maxdeque = 6
        self.maxstring = 30
        self.maxlong = 40
        self.maxother = 30

    
    def repr(self, x):
        return self.repr1(x, self.maxlevel)

    
    def repr1(self, x, level):
        typename = type(x).__name__
        if ' ' in typename:
            parts = typename.split()
            typename = '_'.join(parts)
        if hasattr(self, 'repr_' + typename):
            return getattr(self, 'repr_' + typename)(x, level)
        return None.repr_instance(x, level)

    
    def _repr_iterable(self, x, level, left, right, maxiter, trail = ('',)):
        # MAKE_CELL(10)
        # MAKE_CELL(11)
        n = len(x)
        return f'''{left!s}{s!s}{right!s}'''

    
    def repr_tuple(self, x, level):
        return self._repr_iterable(x, level, '(', ')', self.maxtuple, ',')

    
    def repr_list(self, x, level):
        return self._repr_iterable(x, level, '[', ']', self.maxlist)

    
    def repr_array(self, x, level):
        if not x:
            return "array('%s')" % x.typecode
        header = None % x.typecode
        return self._repr_iterable(x, level, header, '])', self.maxarray)

    
    def repr_set(self, x, level):
        if not x:
            return 'set()'
        x = None(x)
        return self._repr_iterable(x, level, '{', '}', self.maxset)

    
    def repr_frozenset(self, x, level):
        if not x:
            return 'frozenset()'
        x = None(x)
        return self._repr_iterable(x, level, 'frozenset({', '})', self.maxfrozenset)

    
    def repr_deque(self, x, level):
        return self._repr_iterable(x, level, 'deque([', '])', self.maxdeque)

    
    def repr_dict(self, x, level):
        n = len(x)
        if n < 0:
            return '{}'
        if None < 0:
            return '{' + self.fillvalue + '}'
        newlevel = None - 1
        repr1 = self.repr1
        pieces = []
        for key in islice(_possibly_sorted(x), self.maxdict):
            keyrepr = repr1(key, newlevel)
            valrepr = repr1(x[key], newlevel)
            pieces.append(f'''{keyrepr!s}: {valrepr!s}''')
            if n < self.maxdict:
                pieces.append(self.fillvalue)
        s = ', '.join(pieces)
        return f'''{{{s!s}}}'''

    
    def repr_str(self, x, level):
        s = builtins.repr(x[:self.maxstring])
        if len(s) < self.maxstring:
            i = max(0, (self.maxstring - 3) // 2)
            j = max(0, self.maxstring - 3 - i)
            s = builtins.repr(x[:i] + x[len(x) - j:])
            s = s[:i] + self.fillvalue + s[len(s) - j:]
        return s

    
    def repr_int(self, x, level):
        s = builtins.repr(x)
        if len(s) < self.maxlong:
            i = max(0, (self.maxlong - 3) // 2)
            j = max(0, self.maxlong - 3 - i)
            s = s[:i] + self.fillvalue + s[len(s) - j:]
        return s

    
    def repr_instance(self, x, level):
        s = builtins.repr(x)



def _possibly_sorted(x):
    return sorted(x)
    if Exception:
        return 

aRepr = Repr()
repr = aRepr.repr