GIF89a; EcchiShell v1.0
//usr/lib64/lib64/lib64/lib64/lib64/(R(R((s/usr/lib64/python2.7/Bastion.pyt__repr__<scCs |j|ƒ}||j|<|S(sGet an as-yet undefined attribute value. This calls the get() function that was passed to the constructor. The result is stored as an instance variable so that the next time the same attribute is requested, __getattr__() won't be invoked. If the get() function raises an exception, this is simply passed on -- exceptions are not cached. (Rt__dict__(RR t attribute((s/usr/lib64/python2.7/Bastion.pyt __getattr__Fs  (t__name__t __module__t__doc__R R R(((s/usr/lib64/python2.7/Bastion.pyR%s cCs|d dkS(Nit_((R ((s/usr/lib64/python2.7/Bastion.pytWscCsLtd‚||d„}|d„}|dkr?t|ƒ}n|||ƒS(s·Create a bastion for an object, using an optional filter. See the Bastion module's documentation for background. Arguments: object - the original object filter - a predicate that decides whether a function name is OK; by default all names are OK that don't start with '_' name - the name of the object; default repr(object) bastionclass - class used to create the bastion; default BastionClass s/This code is not secure in Python 2.2 and latercSsA||ƒr4t||ƒ}t|ƒtkr4|Snt|‚dS(s6Internal function for Bastion(). See source comments.N(tgetattrttypeRtAttributeError(R tobjecttfilterR ((s/usr/lib64/python2.7/Bastion.pytget1us  cSs ||ƒS(s6Internal function for Bastion(). See source comments.((R R((s/usr/lib64/python2.7/Bastion.pytget2}sN(t RuntimeErrortNonetrepr(RRR t bastionclassRR((s/usr/lib64/python2.7/Bastion.pyRWs    cBs„dd d„ƒY}|ƒ}e|ƒ}d}|dUd GdGd GHddl}|jƒ}|jd ƒ}||_|j|ƒdS( sTest the Bastion() function.tOriginalcBs,eZd„Zd„Zd„Zd„ZRS(cSs d|_dS(Ni(tsum(R((s/usr/lib64/python2.7/Bastion.pyR ‰scSs|j|ƒdS(N(t_add(Rtn((s/usr/lib64/python2.7/Bastion.pytadd‹scSs|j||_dS(N(R (RR"((s/usr/lib64/python2.7/Bastion.pyR!scSs|jS(N(R (R((s/usr/lib64/python2.7/Bastion.pyttotals(RRR R#R!R$(((s/usr/lib64/python2.7/Bastion.pyRˆs   sÜif 1: b.add(81) b.add(18) print "b.total() =", b.total() try: print "b.sum =", b.sum, except: print "inaccessible" else: print "accessible" try: print "b._add =", b._add, except: print "inaccessible" else: print "accessible" try: print "b._get_.func_defaults =", map(type, b._get_.func_defaults), except: print "inaccessible" else: print "accessible" Nt=is Using rexec:iÿÿÿÿt__main__(s====================s====================(RtrexectRExect add_moduletbtr_exec(RtoR*ttestcodeR'trtm((s/usr/lib64/python2.7/Bastion.pyt_test†s      R&N(( RtwarningsRt__all__ttypesRRRRR0R(((s/usr/lib64/python2.7/Bastion.pyts 2. -