1Tc@sOdZddlZddlZddlZddlZddlmZmZmZddl m Z ddl m Z ddl mZddlmZmZddlmZdd lmZmZdd lmZdd lmZdd lmZdd lmZmZm Z m!Z!m"Z"m#Z#ddl$m%Z%m&Z&ddl'm(Z(ej)dej*Z+de,fdYZ-dZ.de,fdYZ/e0Z1e0Z2dZ3dZ4e0Z5dZ6dZ7de0fdYZ8de9dZ:e9e;e;dZ<de0fd YZ=d!e=fd"YZ>d#e=fd$YZ?d%e=fd&YZ@d'e0fd(YZAd)eAe?fd*YZBd+e?fd,YZCd-eCfd.YZDd/e?fd0YZEd1eAe@fd2YZFd3e@fd4YZGd5eGfd6YZHd7efd8YZId9ZJd:ZKd;fd<YZLdS(=sp sphinx.ext.autodoc ~~~~~~~~~~~~~~~~~~ Automatically insert docstrings for functions, classes or whole modules into the doctree, thus avoiding duplication between docstrings and documentation for those who like elaborate docstrings. :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. iN(t FunctionTypetBuiltinFunctionTypet MethodType(tnodes(tassemble_option_dict(tViewList(t rpartitiont force_decode(t_(tModuleAnalyzert PycodeError(tExtensionError(tnested_parse_with_titles(t Directive(t getargspect isdescriptortsafe_getmemberst safe_getattrt safe_reprtis_builtin_class_method(tbase_exceptiont class_types(tprepare_docstringsQ^ ([\w.]+::)? # explicit module name ([\w.]+\.)? # module and/or class name(s) (\w+) \s* # thing name (?: \((.*)\) # optional: arguments (?:\s* -> \s* (.*))? # return annotation )? $ # and nothing more tDefDictcBs)eZdZdZdZdZRS(s2A dict that returns a default on nonexisting keys.cCstj|||_dS(N(tdictt__init__tdefault(tselfR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR1s cCs0ytj||SWntk r+|jSXdS(N(Rt __getitem__tKeyErrorR(Rtkey((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR4s cCstS(N(tTrue(R((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt __nonzero__9s(t__name__t __module__t__doc__RRR (((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR/s  cCs|S(N((tx((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt=stOptionscBseZdZdZRS(s>A dict/attribute hybrid that returns None on nonexisting keys.cCs1y||jddSWntk r,dSXdS(NRt-(treplaceRtNone(Rtname((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt __getattr__Bs (R!R"R#R+(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR&@scCs6|dkrtSg|jdD]}|j^q S(s8Used to convert the :members: option to auto directives.t,N(R)tALLtsplittstrip(targR$((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytmembers_optionLs cCs-|dkrtStd|jdDS(s8Used to convert the :members: option to auto directives.css|]}|jVqdS(N(R/(t.0R$((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pys VsR,N(R)R-tsetR.(R0((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytmembers_set_optionRs cCs|dkrtS|SdS(N(R)tSUPPRESS(R0((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytannotation_optionZs cCstS(snUsed to convert flag options to auto directives. (Instead of directives.flag(), which returns None). (R(R0((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt bool_optionastAutodocReportercBsVeZdZdZdZdZdZdZdZdZ dZ RS( s A reporter replacement that assigns the correct source name and line number to a system message, as recorded in a ViewList. cCs||_||_dS(N(tviewlisttreporter(RR9R:((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRms cCst|j|S(N(tgetattrR:(RR*((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR+qscOszd|krad|kray|jj|d\}}Wntk rIqaX||d<||d %rs[autodoc] getattr(_, %r)s.autodoc: failed to import %s %r from module %rsautodoc: failed to import %s %rs-; the module executes module level statement sand it might call sys.exit().s(; the following exception was raised: %sN(RyRORGR~R|Rt __import__R)tsystmodulesR}RpRRvRgRt Exceptiont SystemExitRRRlt tracebackt format_excRxRt note_rereadR(RtdbgRvRQtpartteterrmsg((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt import_objectCsD         %   cCs|j|jddp|jS(sGet the real module name of an object to document. It can differ from the name of the module through which the object was imported. R"N(RpRgR)R|(R((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytget_real_modnamepscCsE|jjrtS|j|jdd}|rA||jkrAtStS(s`Check if *self.object* is really defined in the module given by *self.modname*. R"N(RRtimported_membersRRpRgR)R|R(RR|((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt check_modulexs  cCsdS(s}Format the argument signature of *self.object*. Should return None if the object does not have a signature. N(R)(R((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt format_argsscCsdj|jp|jS(sFormat the name of *self.object*. This normally should be something that can be parsed by the generated directive, but doesn't need to be (Sphinx will display it unparsed then). R(RR~R|(R((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt format_names cCs|jdk rd|j}nIy|j}Wn6tk rg}|jjd|j|fd}nX|j}|jj j d|j |j|j |j ||}|r|\}}n|dk r||rd|pdSdSdS(sFormat the signature (arguments and return annotation) of the object. Let the user process it via the ``autodoc-process-signature`` event. s(%s)s+error while formatting arguments for %s: %ssautodoc-process-signatures -> %sRLN(RFR)RRRxRRRRyROtemit_firstresultRRgRR(RRFterrRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytformat_signatures"     cCst|dd}t|d|j}|j}|jd||||fd|jjrr|jddn|jr|jd|jdndS( s>Add the directive header and options to the generated content.tdomaintpyt directivetypeu.. %s:%s:: %s%ss u :noindex:u :module: %sN(R;RRRRRRhR~R|(RtsigRRxR*((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytadd_directive_headers   icCsc|j|jdd}t|tr7t||gSt|tr_tt|||gSgS(s;Decode and return lines of the docstring(s) for the object.R#N(RpRgR)RltunicodeRtstrR(Rtencodingtignoret docstring((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytget_docs ccshxa|D]Y}|jjrJ|jjjd|j|j|j|j|nx|D] }|VqQWqWdS(s7Let the user process the docstrings before adding them.sautodoc-process-docstringN(RyROtemitRRRgRR(Rt docstringstdocstringlinesR<((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt process_docs   c Cs|jrt|jjts?t|jjtjd}n |jj}d||jf}|jj}|jrdj |jd |jdf}||krt }||g}x9t |j |D]\}} |j | ||qWqqn d|j}|s|jo|jj} |j| }|sG|jgnx9t |j |D]\}} |j | ||q]Wn|rxAt|j|jD]'\} } |j | | d| dqWndS( s>Add content from docstrings, attribute documentation and user.R(u%s:docstring of %sRiudocstring of %siiN(RRltsrcnameRRtgetfilesystemencodingRtfind_attr_docsR~RRRYRRRRRNtziptdataR>( Rt more_contentt no_docstringtfilenamet sourcenamet attr_docsRRR^R<Rtsrc((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt add_contents2    #  "  ""c Cst}|jry|jj}dj|j}xC|jD]2}|dd|kr@|j|ddq@q@Wn|s|jjst gfSg}x|jjD]l}y&|j ||j |j |fWqt k r||kr|jjd||jfqqXqWn|jjrBt|j d|j }njy|j |j d}Wnt k rtg}n8Xg|jD]$}||j |j |df^q}td|D} xH|D]@} | | kr|s| |jjkr|j | tfqqWt t|fS( s+Return `(members_check_module, members)` where `members` is a list of `(membername, member)` pairs of the members of *self.object*. If *want_all* is True, return all members. Else, only return those members given by *self.options.members* (which may also be none). Riis!missing attribute %s in object %st attr_gettert__dict__css|]}|dVqdS(iN((R2tm((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pys -sN(R3RRRR~RktaddRRtmembersRRNRpRgRRxRRtinherited_membersRtkeysR)t INSTANCEATTRtsorted( Rtwant_alltanalyzed_member_namesRt namespacetitemRtmnametobj_dictt membernamestaname((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytget_object_memberss@    &      4  cCsRg}dj|j}|jr3|jj}ni}x|D] \}}t}|j|dd} |j|dd} | r|j| dd} | | krd} qnt| } t} |rr|jdrr|j drrt |dkrr|j j t kr*|dkr*| p$|j j} q|j j r|j j t k r||j j kr| pi|j j} qni|r|jdr|j jo| p|j j} n3||f|krt} t}n| p|j j} |jjr+|jjjd|j||| |j }|dk r+| } q+n| r@|j|||fq@q@W|S( sFilter the given member list. Members are skipped if - they are private (except if given explicitly or the private-members option is set) - they are special methods (except if given explicitly or the special-members option is set) - they are undocumented (except if the undoc-members option is set) The user can override the skipping decision by connecting to the ``autodoc-skip-member`` event. RR#t __class__t__iRsautodoc-skip-memberN(RR~RRRRpR)tboolt startswithtendswithtlenRRtspecial_membersR-t undoc_memberstprivate_membersRRyRORRRN(RRRtretRRRtRsRutdocRrtcls_docthas_doctkeept skip_user((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytfilter_members5sP    !        csn|j|jjd<|jr6|jd|jjd(RRxRR*RRRR t for_moduleRRR RyRORGR)thasattrR}Rt filename_setRRRRRRR{tcontent_indentRR(RRRRRRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs6          N("R!R"R#RRRRRttitles_allowedR7t option_spect staticmethodRpt classmethodRwRRRRRRRRRRRR)RRRRRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRfs8    % -     ( 3 M <tModuleDocumentercBseZdZdZdZeZi ed6ed6ed6ed6ed6e d6e d 6ed 6e d 6e d 6ed 6ed6ed6Z e dZ dZdZdZdZRS(s6 Specialized Documenter subclass for modules. R}uRs undoc-membersRhsinherited-memberssshow-inheritancetsynopsistplatformt deprecateds member-ordersexclude-memberssprivate-memberssspecial-memberssimported-memberscCstS(N(R(RrRsRtRuRv((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRwscCs3|dk r|jjdn|p(d|gfS(Ns*"::" in automodule name doesn't make senseRL(R)RxR(RR|RRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs cCs?tj|}|js!|jr;|jjd|jn|S(Ns@signature arguments or return annotation given for automodule %s(RfRRFRRxRR(RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR#s  cCstj|||jjr9|jd|jjdn|jjrb|jd|jjdn|jjr|jddndS(Nu :synopsis: s u :platform: u :deprecated:(RfRRRR RR R (RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR*s   cCs|r:t|jds+tt|jfS|jj}n|jjpIg}g}xn|D]f}y#|j|t|j|fWqYt k r|j j dt|jdd|fqYXqYWt |fS(Nt__all__sLmissing attribute mentioned in :members: or __all__: module %s, attribute %sR!s???( RRgRRR RRRRNRRRxRR(RRt memberlistRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR7s #  %(R!R"R#RRRRR1R7tidentityR4RRRwRRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs"    tModuleLevelDocumentercBseZdZdZRS(so Specialized Documenter subclass for objects on module level (functions, classes, data/constants). cCsk|dkrZ|r$|jd}qZ|jjjd}|sZ|jjjd}qZn|||gfS(NRsautodoc:modules py:module(R)RRyRR(RR|RRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRRs (R!R"R#R(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRMstClassLevelDocumentercBseZdZdZRS(s_ Specialized Documenter subclass for objects on class level (methods, attributes). cCs|dkr|r$|jd}nUd}|jjjd}|dkrc|jjjd}n|dkrydgfSt|d\}}|g}|s|jjjd}n|s|jjjd}qn|||gfS(NRs autodoc:classspy:classsautodoc:modules py:module(R)RRyRRR(RR|RRRtmod_clsRr((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRfs      (R!R"R#R(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRastDocstringSignatureMixincBs2eZdZddZdddZdZRS(s Mixin for FunctionDocumenter and MethodDocumenter to provide the feature of reading the signature from the docstring. c Cstj||}t|dkr(dS|d}t|d||sLdStj|d}|sidS|j\}}}}} |j s||jdkrdStj||d}|d}d} x1| t|kr|| j r| d7} qWt|d|| || fS(Niit__new_doclinesii( RfRRtsetattrRRZRR~R/( RRRtdoclinesRZtexmodRRRFRR^((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyt_find_signatures(  &icCs8t|dd}|dk r%|gStj|||S(NR(R;R)RfR(RRRRS((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs cCs[|jdkrN|jjjrN|j}|dk rN|\|_|_qNntj|S(N( RFR)RyRtautodoc_docstring_signatureRRRfR(RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs   N(R!R"R#R)RRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs tFunctionDocumentercBs>eZdZdZdZedZdZedZ RS(s8 Specialized Documenter subclass for functions. tfunctionicCst|ttfS(N(RlRR(RrRsRtRuRv((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRwscCstj|js$tj|jr(dSyt|j}Wntk rt|jdrt|jdrtd|jnyt|jj}Wqtk rt|jj }|dr|dd=qqXnXtj |}|j dd}|S(Nt__new__Rs%r is a builtin classis\s\\( tinspectt isbuiltinRgtismethoddescriptorR)Rt TypeErrorRRRt formatargspecR((RtargspecRF((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs$   cCsdS(N((RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs( R!R"R#RRRRwRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs  tClassDocumentercBseZdZdZdZi ed6ed6ed6ed6ed6ed6ed 6ed 6ed 6Z e d Z d Z dZ dZdZdddZedZedZRS(s6 Specialized Documenter subclass for classes. tclassiRs undoc-membersRhsinherited-memberssshow-inheritances member-ordersexclude-memberssprivate-memberssspecial-memberscCs t|tS(N(RlR(RrRsRtRuRv((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRwscCsVtj|}|rRt|jdrF|jd|jjk|_qRt|_n|S(NR!i(RRRRgR~R!t doc_as_attrR(RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs  cCs|j|jdd}|dksUt|jdsUtj|pQtj| rYdSyt|}Wntk r}dSX|dr|dddkr|dd=ntj |S(NRiRrR(sclssself( RpRgR)RRtismethodt isfunctionRRR (RtinitmethR!((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs  cCs|jr dS|jjjr|t|jd}|j|jdd|_dg|_ |j }|dk r|d|dSnt j |S(NRLRs(%s)i( R$RyRRtMethodDocumenterRxRpRgR)R~RRR(Rtinit_docR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR s    cCs|jrd|_ntj|||j r|jjr|jddt|jdrt |jj rg|jj D]8}|j dkrd|j pd|j |j f^q|}|jt dd j|dqndS( Nt attributeus t __bases__t __builtin__u :class:`%s`u:class:`%s.%s`u Bases: %ss, (R$RRfRRRtshow_inheritanceRRRgRR+R"R!RR(RRtbtbases((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs  $Hic Cs|jjj}g}|j|jdd}|rC|j|n|dkrl|jjjrt|j d}|j|jdd|_dg|_ |j dj g|j |D]}dj |^q}n$|j|j|jddd}|dk r;|tjjks2|jtjjkr;d}n|rl|dkrY|g}qi|j|qlng} xB|D]:} t| tst| |} n| jt| qyW| S(NR#tbothtinitRs (R0sinit(RyRtautoclass_contentRpRgR)RNRR(RxR~RRRRR#R/RlRRR( RRRtcontentRt attrdocstringR)tlt initdocstringRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR,s:   1     cCss|jr_t|jdd}|rottd|gdd}tj||dtqontj||dS(NR!salias of :class:`%s`R=RLR( R$RRgR)RRRRR(RRRt classnameR3((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRTs  cCs!|jr dStj||dS(N(R$RR(RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR_s N(R!R"R#RRR1R7RR4RRRwRRRRR)RRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR"s"   ( tExceptionDocumentercBs/eZdZdZdZdZedZRS(s> Specialized ClassDocumenter subclass for exceptions. t exceptioni cCst|tot|tS(N(RlRt issubclassR(RrRsRtRuRv((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRwos(R!R"R#RRRRRw(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR8es tDataDocumentercBs]eZdZdZdZdZeejZe edu :annotation: %s( RRRRR<RRgt ValueErrorRR5(RRtobjrepr((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs  cCsdS(N((RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs(R!R"R#RRRRRRR6RRwRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR;us  R(cBsheZdZdZdZdZedZej d krHdZ n dZ d Z e d Z RS( sQ Specialized Documenter subclass for methods (normal, static and class). tmethodi2icCstj|ot|t S(N(Rt isroutineRlR(RrRsRtRuRv((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRwsiicCstj|}|s|S|jjj|j}t|tr\d|_|j d|_ n4t|t rd|_|j d|_ n d|_|S(NRiRR?( RRRvRRRRlRRRR(RRtobj_from_parent((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs   cCstj|}|s|St|jtsOt|jtrk|jjdk rkd|_|j d|_ nmt|jt st|jt rt |jdr|jj dk rd|_|j d|_ n d|_|S(NRit__self__RR?(RRRlRgRRtim_selfR)RRRRRRB(RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs    cCstj|js$tj|jr(dSt|j}|drc|dddkrc|dd=ntj|}|jdd}|S(NiRrRs\s\\(sclssself(RRRgRR)RR R((RR!RF((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRscCsdS(N((RR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs(ii(R!R"R#RRRRRwRt version_infoRRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR(s   tAttributeDocumentercBseZdZdZdZeejZeedu :annotation: %s( RRRRR<RKRRgR=RR5(RRR>((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs   cCs)|jst}ntj|||dS(N(RKRRR(RRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRs  (R!R"R#RRRRRR6RRRRRIRRwRRRRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyREs    tInstanceAttributeDocumentercBsJeZdZdZdZdZdZedZdZ e dZ RS(s Specialized Documenter subclass for attributes that cannot be imported because they are instance attributes (e.g. assigned in __init__). tinstanceattributeR*i<i cCs|o|tkS(s)This documents only INSTANCEATTR members.(R(RrRsRtRuRv((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRw'scCsd|_t|_tS(sNever import anything.R*(RRRKR(R((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR,s  cCstj||dtdS(s-Never try to get a docstring from the object.RN(RERR(RRR((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR3s( R!R"R#RRRRRRwRRR(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRLs RicBsneZdZiZiZeddddddgZeZdZ dZ eZ e e Zd Zd ZRS( s^ The AutoDirective class is used for all autodoc directives. It dispatches most of the work to one of the Documenters, which it selects through its *_registry* dictionary. The *_special_attrgetters* attribute is used to customize ``getattr()`` calls that the Documenters make; its entries are of the form ``type: getattr_function``. Note: When importing an object, all items along the import chain are accessed using the descendant's *_special_attrgetters*, thus this dictionary should include all necessary functions for accessing attributes of the parents. Rs undoc-memberssinherited-memberssshow-inheritancesprivate-memberssspecial-membersiicCs)|jj|jj|d|jdS(NR<(twarningsRNR:RIR(Rtmsg((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyR\sc Cst|_|jjj|_|jjjj|_g|_t|_ y|jj |j \}}Wnt k rd}}nX|jjjd|||j|jd}|j|}xq|jD]f}||jkrqn|jjd|ddk}||jjjkr| rd|j|RzRR=RRJt argumentsRR3tdebug2Rtrecord_dependenciesRtmemoR8RRtsectionR t paragrapht nested_parseRC( RR=RRt doc_classtflagtnegatedRRORtfnt old_reportertnode((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pytrun_s^      "   "    (R!R"R#RRjR3RURt has_contenttrequired_argumentstoptional_argumentstfinal_argument_whitespaceRRRRRd(((s</usr/local/lib/python2.7/site-packages/sphinx/ext/autodoc.pyRi8s   cCs6t|ts"td|n|tj|j sd    .        +!;F 1)!CBj