← Back
Editing: failure.cpython-38.pyc
U ��W[h � @ s d Z ddlmZmZmZ ddlZddlZddlZddlZddl Z ddlm Z ddlmZ ddl mZmZ dadZG dd � d e�Zd$dd�Zd ZG dd� de�Zdd� ZG dd� de�ZG dd� de�ZG dd� de�Zg Zdd� ZG dd� de�Z dd� Z!dZ"dddde j#fd d!�Z$d"d#� Z%dS )%z9 Asynchronous-friendly error mechanism. See L{Failure}. � )�division�absolute_import�print_functionN)�getmro)�reflect)�_PY3�NativeStringIO� c @ s e Zd ZdS )�DefaultExceptionN)�__name__� __module__�__qualname__� r r �8/usr/lib/python3/dist-packages/twisted/python/failure.pyr s r �defaultc C sX |dkrt d|f ��|}|dkrL| D ] \}}}}}|d|||f � q&�n|dkr�| D ]8\}}}}}|d|||f � |dt�||��� � qXn�|dkr�| D ] \}}}}}|d |||f � q�|d � n�|dk�rT| D ]x\}}}}}|d |||f � |d� |D ]\} } |d | t| �f � �q|d� |D ]\} } |d | t| �f � �q2q�dS )a� Format and write frames. @param frames: is a list of frames as used by Failure.frames, with each frame being a list of (funcName, fileName, lineNumber, locals.items(), globals.items()) @type frames: list @param write: this will be called with formatted strings. @type write: callable @param detail: Four detail levels are available: default, brief, verbose, and verbose-vars-not-captured. C{Failure.printDetailedTraceback} uses the latter when the caller asks for verbose, but no vars were captured, so that an explicit warning about the missing data is shown. @type detail: string )r �brief�verbose�verbose-vars-not-capturedzNDetail must be default, brief, verbose, or verbose-vars-not-captured. (not %r)r z %s:%s:%s r z File "%s", line %s, in %s z %s r z%s:%d: %s(...) zA [Capture of Locals and Globals disabled (use captureVars=True)] r z [ Locals ] z %s : %s z ( Globals ) N)� ValueError� linecache�getline�strip�repr)�frames�write�detail�w�method�filename�linenoZ localVarsZ globalVars�name�valr r r � format_frames# s6 �� r"