\x89\x50\x4E\x47\x0D\x0A\x1A\x0A PNG  \x89\x50\x4E\x47\x0D\x0A\x1A\x0A  13\c@@s ddlmZddlmZmZmZmZejZde fdYZ de fdYZ dZ d e fd YZ d e fd YZd e fdYZdefdYZdefdYZdefdYZde fdYZdS(i(tabsolute_importi(t configitemsterrortpycompattutilt_funcregistrarbasecB@sVeZdZddZdZdZdZdZdZ dZ dZ RS( sBase of decorator to register a function 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" cC@s%|dkri|_n ||_dS(N(tNonet_table(tselfttable((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyt__init__2s  c@sfdS(Nc@sj|S(N(t _doregister(tfunc(targstdecltkwargsR(s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyt9s((RRR R((R RRRs9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyt__call__8scO@s|j|}||jkr:d|}tj|n|jrtj|d rtj|jj }||_ tj |j |||_n||j|<|j |||||S(Ns%duplicate registration for name: "%s"t_origdoc(t_getnameRRtProgrammingErrort__doc__Rt safehasattrRtsysbyteststripRtsysstrt _formatdoct _extrasetup(RR RR Rtnametmsgtdoc((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyR ;s  ! cC@s+|jd}|dkr#|| S|SdS(sIParse function declaration and return the name of function in it t(iN(tfind(RRti((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyt_parsefuncdeclLs cC@s|S(sReturn the name of the registered function from decl Derived class should override this, if it allows more descriptive 'decl' string than just a name. ((RR((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyRUscC@s|j||fS(sReturn formatted document of the registered function for help 'doc' is '__doc__.strip()' of the registered function. (t _docformat(RRR((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyR_scC@sdS(s>Execute exra setup for registered function, if needed N((RRR ((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyRfsN( t__name__t __module__RRR RR R"RR#RR(((s9/usr/lib64/python2.7/site-packages/mercurial/registrar.pyRs     tcommandc B@s}eZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZddeeeddedZRS(s Decorator to register a command function to table This class receives a command table as its argument. The table should be a dict. The created object can be used as a decorator for adding commands to that command table. This accepts multiple arguments to define a command. The first argument is the command name (as bytes). The `options` keyword argument is an iterable of tuples defining command arguments. See ``mercurial.fancyopts.fancyopts()`` for the format of each tuple. The `synopsis` argument defines a short, one line summary of how to use the command. This shows up in the help output. There are three arguments that control what repository (if any) is found and passed to the decorated function: `norepo`, `optionalrepo`, and `inferrepo`. The `norepo` argument defines whether the command does not require a local repository. Most commands operate against a repository, thus the default is False. When True, no repository will be passed. The `optionalrepo` argument defines whether the command optionally requires a local repository. If no repository can be found, None will be passed to the decorated function. The `inferrepo` argument defines whether to try to find a repository from the command line arguments. If True, arguments will be examined for potential repository locations. See ``findrepo()``. If a repository is found, it will be used and passed to the decorated function. The `intents` argument defines a set of intended actions or capabilities the command is taking. These intents can be used to affect the construction of the repository object passed to the command. For example, commands declaring that they are read-only could receive a repository that doesn't have any methods allowing repository mutation. Other intents could be used to prevent the command from running if the requested intent could not be fulfilled. If `helpcategory` is set (usually to one of the constants in the help module), the command will be displayed under that category in the help's list of commands. The following intents are defined: readonly The command is read-only The signature of the decorated function looks like this: def cmd(ui[, repo] [, ] [, ]) `repo` is required if `norepo` is False. `` are positional args (or `*args`) arguments, of non-option arguments from the command line. `` are keyword arguments (or `**options`) of option arguments from the command line. See the WritingExtensions and MercurialApi documentation for more exhaustive descriptions and examples. trepotremotetcommitt managementt organizationtfilest navigationtwdirtimportt maintenancethelptmisctnonec C@s||_||_||_|p't|_| |_| |_|rd|t||f|j|s" R_00)&