Your IP : 172.28.240.42


Current Path : /usr/lib/python2.7/
Upload File :
Current File : //usr/lib/python2.7/functools.pyc

ó
ÿ–|_c@s\dZddlmZmZdZd
Zeed„Zeed„Zd	„Zd
„Z	dS(sEfunctools.py - Tools for working with functions and callable objects
iÿÿÿÿ(tpartialtreducet
__module__t__name__t__doc__t__dict__cCsax'|D]}t||t||ƒƒqWx0|D](}t||ƒjt||iƒƒq1W|S(sUpdate a wrapper function to look like the wrapped function

       wrapper is the function to be updated
       wrapped is the original function
       assigned is a tuple naming the attributes assigned directly
       from the wrapped function to the wrapper function (defaults to
       functools.WRAPPER_ASSIGNMENTS)
       updated is a tuple naming the attributes of the wrapper that
       are updated with the corresponding attribute from the wrapped
       function (defaults to functools.WRAPPER_UPDATES)
    (tsetattrtgetattrtupdate(twrappertwrappedtassignedtupdatedtattr((s/usr/lib/python2.7/functools.pytupdate_wrappers


&cCsttd|d|d|ƒS(s‹Decorator factory to apply update_wrapper() to a wrapper function

       Returns a decorator that invokes update_wrapper() with the decorated
       function as the wrapper argument and the arguments to wraps() as the
       remaining arguments. Default arguments are as for update_wrapper().
       This is a convenience function to simplify applying partial() to
       update_wrapper().
    R
RR(RR(R
RR((s/usr/lib/python2.7/functools.pytwraps'scCsKidd„fdd„fdd„fgd6dd„fdd	„fdd
„fgd6dd„fdd„fdd
„fgd6dd„fdd„fdd„fgd6}tt|ƒƒt|ƒ@}|sãtdƒ‚nt|ƒ}xU||D]I\}}||krú||_tt|ƒj|_t|||ƒqúqúW|S(s6Class decorator that fills in missing ordering methodst__gt__cSs||kp||kS(N((tselftother((s/usr/lib/python2.7/functools.pyt<lambda>8st__le__cSs||kp||kS(N((RR((s/usr/lib/python2.7/functools.pyR9st__ge__cSs||kS(N((RR((s/usr/lib/python2.7/functools.pyR:st__lt__cSs||kp||kS(N((RR((s/usr/lib/python2.7/functools.pyR;scSs||ko||kS(N((RR((s/usr/lib/python2.7/functools.pyR<scSs||kS(N((RR((s/usr/lib/python2.7/functools.pyR=scSs||kp||kS(N((RR((s/usr/lib/python2.7/functools.pyR>scSs||kp||kS(N((RR((s/usr/lib/python2.7/functools.pyR?scSs||kS(N((RR((s/usr/lib/python2.7/functools.pyR@scSs||kp||kS(N((RR((s/usr/lib/python2.7/functools.pyRAscSs||ko||kS(N((RR((s/usr/lib/python2.7/functools.pyRBscSs||kS(N((RR((s/usr/lib/python2.7/functools.pyRCss6must define at least one ordering operation: < > <= >=(	tsettdirt
ValueErrortmaxRRtintRR(tclstconverttrootstroottopnametopfunc((s/usr/lib/python2.7/functools.pyttotal_ordering5s.	cs dtf‡fd†ƒY}|S(s,Convert a cmp= function into a key= functiontKcs}eZdgZd„Z‡fd†Z‡fd†Z‡fd†Z‡fd†Z‡fd†Z‡fd†Z	d„Z
RS(	tobjcWs
||_dS(N(R$(RR$targs((s/usr/lib/python2.7/functools.pyt__init__Tscsˆ|j|jƒdkS(Ni(R$(RR(tmycmp(s/usr/lib/python2.7/functools.pyRVscsˆ|j|jƒdkS(Ni(R$(RR(R'(s/usr/lib/python2.7/functools.pyRXscsˆ|j|jƒdkS(Ni(R$(RR(R'(s/usr/lib/python2.7/functools.pyt__eq__Zscsˆ|j|jƒdkS(Ni(R$(RR(R'(s/usr/lib/python2.7/functools.pyR\scsˆ|j|jƒdkS(Ni(R$(RR(R'(s/usr/lib/python2.7/functools.pyR^scsˆ|j|jƒdkS(Ni(R$(RR(R'(s/usr/lib/python2.7/functools.pyt__ne__`scSstdƒ‚dS(Nshash not implemented(t	TypeError(R((s/usr/lib/python2.7/functools.pyt__hash__bs(RRt	__slots__R&RRR(RRR)R+((R'(s/usr/lib/python2.7/functools.pyR#Rs		(tobject(R'R#((R's/usr/lib/python2.7/functools.pyt
cmp_to_keyPsN(s
__module__s__name__s__doc__(s__dict__(
Rt
_functoolsRRtWRAPPER_ASSIGNMENTStWRAPPER_UPDATESRRR"R.(((s/usr/lib/python2.7/functools.pyt<module>s