ROOTPLOIT
Server: LiteSpeed
System: Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
User: niphet (1079)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //usr/lib64/python2.7/Demo/metaclasses/Trace.pyc
ó
¿œ^c@s©dZddlZddlZddd„ƒYZddd„ƒYZddd„ƒYZd	efd
„ƒYZeddidd6ƒZd
„Z	e
dkr¥e	ƒndS(s?Tracing metaclass.

XXX This is very much a work in progress.

iÿÿÿÿNtTraceMetaClasscBs>eZdZdZd„Zd„Zd„Zd„ZdZ	RS(sUMetaclass for tracing.

    Classes defined using this metaclass have an automatic tracing
    feature -- by setting the __trace_output__ instance (or class)
    variable to a file object, trace messages about all calls are
    written to the file.  The trace formatting can be changed by
    defining a suitable __trace_call__ method.

    icCs(||_||_||_d|_dS(Ni(t__name__t	__bases__t_TraceMetaClass__dictt_TraceMetaClass__inited(tselftnametbasestdict((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt__init__s			cCsiy|j|SWnStk
rdx6|jD]+}y|j|ƒSWq)tk
rSq)Xq)Wt|‚nXdS(N(RtKeyErrorRt__getattr__tAttributeError(RRtbase((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyRs

cCs*|js||j|<n
||j|<dS(N(Rt__dict__R(RRtvalue((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt__setattr__(s	cOsZtƒ}|j|ƒy|jdƒ}Wntk
rEd„}nXt|||ƒ|S(NR	cSsdS(N(tNone(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt<lambda>4t(tTracingInstancet
__meta_init__RRtapply(Rtargstkwtinsttinit((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt__call__.s	


N(
Rt
__module__t__doc__RR	RRRRt__trace_output__(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR	s					
RcBs)eZdZd„Zd„Zd„ZRS(s9Helper class to represent an instance of a tracing class.cGs|j|d|ƒdS(Ns
(twrite(RtfptfmtR((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt__trace_call__=scCs
||_dS(N(t_TracingInstance__class(Rtklass((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR@scCsšy|jj|ƒ}Wntk
r2t|‚nXt|ƒtjkrL|S|jjd|}|jsv|dkr†t|||ƒSt	|||ƒSdS(Nt.R"(
R#RRttypettypestFunctionTypeRRtNotTracingWrappertTracingWrapper(RRtrawtfullname((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyRCs

(RRRR"RR(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR:s		R)cBseZd„Zd„ZRS(cCs||_||_||_dS(N(RtfuncR(RRR-R((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR	Ss		cOst|j|jf||ƒS(N(RR-R(RRR((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyRWs(RRR	R(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR)Rs	R*cBseZd„ZRS(cOsÈ|jj|jjd|j|j||ƒy#t|j|jf||ƒ}WnMtjƒ\}}}|jj|jjd|j||ƒ|||‚n'X|jj|jjd|j|ƒ|SdS(Ns#calling %s, inst=%s, args=%s, kw=%ss'returning from %s with exception %s: %ssreturning from %s with value %s(RR"RRRR-tsystexc_info(RRRtrvtttvttb((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR#
(RRR(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR*ZstTracedRcCsédtfd„ƒYadtfd„ƒYatdƒ}|GH|jGH|jdƒGH|jdƒGH|jdƒGH|jd	ƒGH|jd
ƒGH|jGHtjGHtjGHtjGHtjGHtƒ}|GH|jdƒGH|jdƒGH|jGHdS(NtCcBs/eZdd„Zd„Zd„ZejZRS(icSs
||_dS(N(tx(RR6((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR	sRcSs
||_dS(N(R6(RR6((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pytm1tRcSs|j|S(N(R6(Rty((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pytm2uR(RRR	R7R9R.tstdoutR(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR5rs		tDcBseZd„ZdZRS(cSsd|fGHtj||ƒS(NsD.m2(%r)(R5R9(RR8((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR9xsN(RRR9RR(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyR;ws	iáidi
i!ii (R4R5R;R6R7R9R	(R6R8((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt_testps(	t__main__(((((RR'R.RRR)R*RR4R<R(((s./usr/lib64/python2.7/Demo/metaclasses/Trace.pyt<module>s1