ó ;œPc@sýddlTddd„ƒYZddd„ƒYZddd„ƒYZddd „ƒYZd efd „ƒYZd efd „ƒYZdefd„ƒYZdefd„ƒYZ ddd„ƒYZ ddd„ƒYZ d„Z dsïe dkrùe ƒndS( iÿÿÿÿ(t*t SpecObjectcBseZd„ZRS(cCs ||_dS(N(tmod(tselfR((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt__init__+s(t__name__t __module__R(((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR*stSpecEnvcBs,eZd„Zd„Zd„Zd„ZRS(cCs||_g|_g|_dS(N(Rt unknown_nodestfiles(RR((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR4s  cCs dG|jGH|jj|ƒdS(Nt add_unknown(ttagRtappend(Rtnode((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt visit_default9s cCs(dGHt||ƒ}|jj|ƒdS(Nt visit_file(tFileEnvR R (RR tfile((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR=scCs t|ƒfS(N(t GuppyWorld(Rtenv((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytget_predefined_subjectsBs(RRRRRR(((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR3s   RcBsSeZd„Zd„Zd„Zdd„Zd„Zd„Zd„Z d„Z RS( cCs~|j}||_|j|_|_i|_x'|j|ƒD]}||j|jWt|||jƒ}|j|ƒdS(N(RtargtnametfilenametsubjectsRtSubjecttchildren_accept(RRR RtsR((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRGs   cCs,|j}|j||ƒ}|j|ƒdS(N(Rt find_subjectt add_aspects(RR Rtsubject((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytvisit_aspects_ofTs cCsU||jkrD|j|d|ƒ|j|j|jd|ƒn ||j|R"R?(RR RR>R"R?((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRÑs    cCs#d|jj|j|j|jfS(Ns %s(%r,%r,%r)(t __class__RR RR>(R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt__repr__Øsc CsId|jj|j|jddjg|jD]}t|ƒ^q+ƒfS(Ns %s(%r,%r,%s)s(%s)t,(RARR RtjoinR>tstr(Rtc((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt__str__Üstvisit_cCsK|jr7td|jd|jƒ}|j||ƒn|j||ƒdS(NR-((RR=R"tacceptR(RtvisitortprefixR ((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt arg_acceptás cCs‘|dkr|j}n|dkr0|j}n|dkrH|j}n|dkr`|j}n|dkrx|j}n|j|||||ƒS(N(R(R RR>R"R?RA(RR RR>R"R?((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytcopyçs          cCs(x!|jD]}|j||ƒq WdS(N(R>RI(RRJRKRF((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRôscCs€t|||jdƒ}|dkrrt||ddƒ}|dkrrd||j|f}|GHt|‚dSn||ƒdS(Ntdefaultsaccept: unknown: %r, %r in %r(tgetattrR R(t ValueError(RRJRKtmR$((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRIøs   cCs,|dkr|}n|jj||ƒdS(N(R(R?terror(RR$R ((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRRs  cCskg}xU|jD]J}|jdkr|j|jƒ|jjdƒsZ|jdƒqZqqWdj|ƒS(sI Get the total text of all text children, joined with and ended with ' ' R-s t(R>R R RR3RD(RR-RF((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytget_text scCs5|jjƒ}|jdƒr1|djƒ}n|S(NR2i(RR5R4(RR((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytget_argscCsi|j}|jdƒr%|d}ng|jdƒD]}|jƒ^q5}|dgkreg}n|S(NR2iRCRS(RR4tsplitR5(RRtxtnames((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt get_arglists  ( cCsM|jr@td|jd|j|jƒg}|j|jƒn |j}|S(NR-((RR=R"R?textendR>(RR>((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytget_arg_children"s  $ cCs+|j}|s|jƒ}n||jfS(N(RR5R>(RtnostripR((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt get_arg_rest+s cCs&|jrtd|‚n|jjƒS(sQ Get the arg as by self.arg, but make sure there are no more children. s&No children nodes expected in node: %s(R>t SyntaxErrorRR5(R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytget_arg_norest1s cCsG|jjƒ}d|ks3d|ks3d|krCtd|‚n|S(s† Get the argument in the form of a name It is the argument stripped. And not allowed to contain : or , or new line. s R2RCsInvalid name: %r(RR5R^(RR((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt get_namearg9s$c s|dkr|j}n|r6i‰‡fd†}ng‰‡fd†}g}xÛ|jD]Ð}|jdkrîx¸|jD]m}|jr•|j}n|jd|ƒ|jrÈ|jd|jdƒn|jrz||j||ƒqzqzWq[|jddkr||jd |j|ƒq[|j|ƒq[Wt|ƒt|jƒkrS|}n$|j||j||j|j ƒ}|ˆfS( Ncs.|ˆkr |jd|ƒn |ˆ|RRRR tlenRAR"R?( RR tattrdictRcR>tchtoptRR ((RbsF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt split_attrsCs4       (R RR>R"R?(N(RRt __slots__R(RRBRGRLRMRRIRRRTRURYR[R]R_R`tFalseRj(((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR=Ïs"         tSourcecBsGeZdddddd„Zd„Zddddd„Zd„ZRS(ii cCsU||_||_||_||_||_g|_||_d|_d|_dS(Ni( RtlineststringR\tdebugt error_reportst max_errorst num_warningst num_errors(RRRnRoR\RpRr((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRjs        cCsžd}d}|dk ršt|dƒr<|j}|j}n |}|}|dk rr|j}|jd|ƒ}nd||dfGH|ršd|GHqšndS(NRSsR"s%s:%s:is %s(R(thasattrR"R?RR#(RtcontexttlinetextRR"R?((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyterrmsg_contextus     cCsç|jj|||||fƒ|r7|jd7_n|jd7_|j|ƒ|red|GHn d|GHHx+|D]#\}}|j|ƒd|GHHqvW|jr°tƒn3|j|jkrÎtd‚n|dk rã|‚ndS(Nis* %ss*** %ss %ssToo many errors, giving up( RqR RsRtRxRpt set_traceRrt TooManyErrorsR((RtmessageRvR%tmoretharmlessR$tctx((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRR‡s&         cCs{|jdkrp|jdkrX|jrQyt|jƒjƒ|_WqUdSXqXdSn|jjdƒ|_n|j|S(NRSs (RnR(RoRR*treadRV(RR"((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR#¤s N((RRR(RRxRRR#(((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRmis t _GLUECLAMP_c Bs×eZd.Zd/Zd0d1d2d3d4d5d6d7d8d9d:d;f Zd„Zd„Zd„Zd „Zd!d"„Z d#d!d$„Z d%„Z d&„Z d'„Z d<d!d=d(„Zd)„Zd*„Zd+„Zd,„Zd-„ZRS(>tnodemapR=s_parent:DottedTrees_root:res_root:osRat attributeRFtcommenttcondt conditiontdt descriptiontdwhtdescription_with_headertegtexampletfoptfunction_operatortioptinplace_operatortkatkey_argtoptoperatortroptreverse_operatorttR-cCs t|jƒS(N(tdicttnode_aliases_defs(R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt_get_node_aliasesËscCs,tg|jD]\}}||f^q ƒS(N(R—R˜(Rtktv((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt_get_reverse_node_aliasesÎscCs|jjtdƒƒjS(Nsu"[\u0080-\uffff]"(tretcompiletevaltsearch(R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt_get_is_not_asciiÒscCs t|ƒfS(N(R(R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRØsic Cstd|d|ƒ}|jj||ƒ}d}|}|jjƒ}|j|j|ƒ}|j} |j||||| |ƒS(NRR\R( Rmt DottedTreet parse_fileR R5tnodes_of_dforestR>R"t node_of_tatci( RRR\R?tdtreeR RR-R>R"((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt node_of_fileås sc Cs‚|jj|ƒ}d}|}td|d|d|ƒ}|jjƒ}|j} |j|j|ƒ} |j|||| | |ƒS(NRoRR\( R¢t parse_stringRmR R5R"R¤R>R¥( RRoRR\R¦R RR?R-R"R>((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytnode_of_stringïs c Cs |j}|jdƒ}|dkr3t|ƒ}n|jdd|ƒ}|jdd|ƒ}|dkr­|dks||kr­|| jƒd||djƒ}}nl|dkrúd|| ksá|t|jƒƒkrê|}qútd|‚n|| jƒ||d}}||jkr8|j|}n|jdd ƒ}|d kro|j ro|jƒ}n|j |j |ƒ}|j ||||j |ƒS( Ns iÿÿÿÿReiR2it s!No colon in spaced tag in node %st_R-( R tfindRfR5R,R^t node_aliasestreplaceR\R¤R>t node_of_taciR"( RR¦R?R ttextpostequpostcolonposRR>((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt node_of_dtreeùs,  $ (  cCsÉg|D]}|j||ƒ^q}g}x‘|D]‰}|jdkrZ|j|ƒq2n|jjƒ}|jjj|jjj|j ƒ|ƒ}|j |d|j ƒ}|j |j ƒq2Wt|ƒS(NtincludeR\(R³R R RR5tostpathRDtdirnameRR§R\RZR>R@(RtdforestR?RFtonodestnodesR R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR¤s%  ! cCstS(N(R=(R((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt_get_node_of_taci&scCsp|rW|dkr2|r)|d|}qT|}qW|jd|d||ƒf|}n|j|||||ƒS(NR-s ((R¯(RR RR-R>R"R?((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR¥)s  %cCs@|j|ƒ}t|ƒdkr)|dS|jdd|ƒSdS(NiitblockRS(t nodes_of_textRfR¯(RR-Rº((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt node_of_text4scCsïg}|j|ƒrÒg}x†|D]~}t|ƒ}|dkrP|j|ƒq"|r|j|jddj|ƒƒƒg}n|j|jdt|ƒƒƒq"W|rë|j|jddj|ƒƒƒqën|j|jd|ƒƒ|S(Ni€R-RStchar(t is_not_asciitordR R¯RDRE(RR-RºtcharsR¿tno((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR½@s   " #(c CsŽ|j}|j}|jjj|jjƒ}|GH|jjj|dƒ}|j|ƒ}|j |ƒ}|j |ƒddl }||_ dS(Nsmain.gsliÿÿÿÿ( t_roottspecsRµR¶R·t_modulet__file__RDRR§RIt__main__R( RtpackagetrootRÅtspecdirt main_dt_nameRR RÈ((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pytmainTs     cCs|jƒdS(N(t print_doc(Rtdt((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyRÎhscCsM|}|r|d|}n|r4|d|}n|jj||ƒ}|S(Ns: s (R¢t unparse_tag(RtlevelR RR-thead((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt unparse_headks(RR=(s_parent:DottedTrees_root:res_root:os(RaR‚(RFRƒ(R„R…(R†R‡(RˆR‰(RŠR‹(RŒR(RŽR(RR‘(R’R“(R”R•(R–R-(N(RRt _chgable_t _imports_R˜R™RœR¡RR§R©R³R¤R»R(R¥R¾R½RÍRÎRÓ(((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyR€²s>           cCsEddlm}|ƒ}|jjj}|jjjj|jƒdS(Niÿÿÿÿ(tRoot(tguppyRÖtgslt SpecNodesRÍ(RÖRÊtsp((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt test_mainws iRÈN(((((((tguppy.gsl.ExceptionsRRRRR;R<RtobjectR=RmR€RÛR(((sF/opt/alt/python27/lib64/python2.7/site-packages/guppy/gsl/SpecNodes.pyt's  =" šIÅ