File: //usr/lib/python2.7/dist-packages/mercurial/registrar.pyc
ó
ÛXc @@ sÄ d d l m Z d d l m Z m Z d e f d „ ƒ YZ d e f d „ ƒ YZ d e f d „ ƒ YZ d
e f d „ ƒ YZ d e f d
„ ƒ YZ
d e f d „ ƒ YZ d e f d „ ƒ YZ d S( i ( t absolute_importi ( t pycompatt utilt _funcregistrarbasec B@ sV e Z d Z d d „ Z d „ Z d „ Z d „ Z d „ Z d Z d „ Z
d „ Z RS( s Base of decorator to register a fuction for specific purpose
This decorator stores decorated functions into own dict 'table'.
The least derived class can be defined by overriding 'formatdoc',
for example::
class keyword(_funcregistrarbase):
_docformat = ":%s: %s"
This should be used as below:
keyword = registrar.keyword()
@keyword('bar')
def barfunc(*args, **kwargs):
'''Explanation of bar keyword ....
'''
pass
In this case:
- 'barfunc' is stored as 'bar' in '_table' of an instance 'keyword' above
- 'barfunc.__doc__' becomes ":bar: Explanation of bar keyword"
c C@ s% | d k r i | _ n | | _ d S( N( t Nonet _table( t selft table( ( s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyt __init__) s c @ s ‡ ‡ ‡ ‡ f d † S( Nc @ s ˆ j | ˆ ˆ ˆ Ž S( N( t _doregister( t func( t argst declt kwargsR ( s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyt <lambda>0 s ( ( R R R R
( ( R R R
R s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyt __call__/ s c O@ s‚ | j | ƒ } | j r[ t j | d ƒ r[ | j j ƒ } | | _ | j | | ƒ | _ n | | j | <| j | | | | Ž | S( Nt _origdoc( t _getnamet __doc__R t safehasattrt stripR t
_formatdocR t _extrasetup( R R
R R R
t namet doc( ( s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyR 2 s
c C@ s+ | j d ƒ } | d k r# | | S| Sd S( sI Parse function declaration and return the name of function in it
t (i N( t find( R R t i( ( s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyt _parsefuncdecl? s c C@ s | S( s° Return the name of the registered function from decl
Derived class should override this, if it allows more
descriptive 'decl' string than just a name.
( ( R R ( ( s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyR H s c C@ s | j | | f S( s† Return formatted document of the registered function for help
'doc' is '__doc__.strip()' of the registered function.
( t
_docformat( R R R ( ( s7 /usr/lib/python2.7/dist-packages/mercurial/registrar.pyR R s c C@ s d S( s>