File "debug.cpython-37.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python37/lib/python3.7/site-packages/jinja2/__pycache__/debug.cpython-37.pyc
File size: 5.2 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

B

Fa.!@sddlZddlZddlZddlmZddlmZddlmZddl	m
Z
ddl	mZejrfddl
mZdejeed	d
dZeejeeeedd
dZejeejfejeejfdddZejdkreejeedddZnedkrJyddlZWn.ek
r.eejeedddZYnXeejeedddZn2ddlZGdddejZ eejeedddZdS)N)CodeType)
TracebackType)TemplateSyntaxError)
internal_code)missing)Context)sourcereturnc	Cst\}}}tt|}tt|}t|trd|jsdd|_||_	|
dt|d|jpZd|j
}n|j}g}xn|dk	r|jjtkr|j}qp|jjd}|dk	r||j}t|||j|}||n
|||j}qpWd}xt|D]}t||}qW|
|S)axRewrite the current exception to replace any tracebacks from
    within compiled template code with tracebacks that look like they
    came from the template source.

    This must be called within an ``except`` block.

    :param source: For ``TemplateSyntaxError``, the original source if
        known.
    :return: The original exception with the rewritten traceback.
    TNz	<unknown>Z__jinja_template__)sysexc_infotcast
BaseExceptionr
isinstancerZ
translatedr	with_tracebackfake_tracebackfilenamelinenotb_nexttb_framef_coder	f_globalsgetZget_corresponding_lineno	tb_linenoappendreversedtb_set_next)	r	_	exc_valuetbstacktemplaterZfake_tbrr#=/opt/alt/python37/lib/python3.7/site-packages/jinja2/debug.pyrewrite_traceback_stacks4



r%)rr rrr
c	Cs|dk	r"t|jj}|ddni}|||d}td|dd|d}d}|dk	r|jjj}|d	krnd
}n|drd|d
d}tj	dkr|j
|d}n@t|j|j
|j|j|j|j|j|j|j|j||j|j|j|j}yt|||Wn tk
rtdjSXdS)a,Produce a new traceback object that looks like it came from the
    template source instead of the compiled code. The filename, line
    number, and location name will point to the template, and the local
    variables will be the current template context.

    :param exc_value: The original exception to be re-raised to create
        the new traceback.
    :param tb: The original traceback to get the local variables and
        code info from.
    :param filename: The template filename.
    :param lineno: The line number in the template source.
    N__jinja_exception__)__name____file__r&
rzraise __jinja_exception__execr"rootztop-level template codeZblock_zblock ))co_name)get_template_localsrf_localspopcompilerr/
startswithrversion_inforeplacerco_argcountco_kwonlyargcount
co_nlocalsco_stacksizeco_flagsco_code	co_constsco_namesco_varnamesco_filenameco_firstlineno	co_lnotabco_freevarsco_cellvarsr*rrr)	rr rrlocalsglobalscodelocationfunctionr#r#r$rLsL


r)real_localsr
c
	Cs|d}|dk	r |}ni}i}x|D]v\}}|dr2|tkrNq2y|dd\}}}t|}Wntk
rw2YnX||dd}	|	|kr2||f||<q2Wx6|D]*\}\}}|tkr|	|dq|||<qW|S)zlBased on the runtime locals, get the context that would be
    available at that point in the template.
    contextNZl_rr0)r)
rget_allcopyitemsr5rsplitint
ValueErrorr3)
rKctxdataZlocal_overridesnamevaluerZ	depth_strdepthZ	cur_depthr#r#r$r1s*
r1)r-)r rr
cCs
||_|S)N)r)r rr#r#r$rsrPyPycCs|S)Nr#)r rr#r#r$rscsfdd}tj||dS)Ncs$|jdkr|jddkrS|S)N__getattribute__rr)opnameargsZdelegate)op)rr#r$
controllersztb_set_next.<locals>.controller)obj)tputilZ
make_proxy)r rr_r#)rr$rsc@s*eZdZdejefdejfgZdS)_CTracebackZ
PyObject_HEADrN)	r'
__module____qualname__ctypesc_byteobject
__sizeof__	py_object_fields_r#r#r#r$rbsrbcCsbtt|}|jdk	r:t|j}t|_tj||dk	r^t|}tj|||_|S)N)	rbfrom_addressidrreri	pythonapiZ	Py_DecRefZ	Py_IncRef)r rZc_tbZ	c_tb_nextr#r#r$rs


)N)!platformrtypingr
typesrr
exceptionsrutilsrr
TYPE_CHECKINGZruntimerOptionalstrrr%rRrMappingAnyDictr1r6rpython_implementationraImportErrorre	Structurerbr#r#r#r$<module>s8>H(,