/usr/lib64/python2.6/site-packages/jinja2
NameSizeModeActions
bccache.py112940644editdlrm
bccache.pyc134770644editdlrm
bccache.pyo134770644editdlrm
compiler.py559230644editdlrm
compiler.pyc509150644editdlrm
compiler.pyo508450644editdlrm
constants.py62290644editdlrm
constants.pyc76970644editdlrm
constants.pyo76970644editdlrm
debug.py99270644editdlrm
debug.pyc101660644editdlrm
debug.pyo100940644editdlrm
defaults.py10500644editdlrm
defaults.pyc16140644editdlrm
defaults.pyo16140644editdlrm
environment.py346510644editdlrm
environment.pyc345220644editdlrm
environment.pyo341030644editdlrm
exceptions.py30730644editdlrm
exceptions.pyc47210644editdlrm
exceptions.pyo47210644editdlrm
ext.py181070644editdlrm
ext.pyc176810644editdlrm
ext.pyo176140644editdlrm
filters.py218060644editdlrm
filters.pyc247740644editdlrm
filters.pyo247740644editdlrm
lexer.py246640644editdlrm
lexer.pyc205660644editdlrm
lexer.pyo203970644editdlrm
loaders.py115070644editdlrm
loaders.pyc132180644editdlrm
loaders.pyo132180644editdlrm
meta.py28460644editdlrm
meta.pyc36670644editdlrm
meta.pyo36670644editdlrm
nodes.py234640644editdlrm
nodes.pyc381880644editdlrm
nodes.pyo376930644editdlrm
optimizer.py23020644editdlrm
optimizer.pyc28730644editdlrm
optimizer.pyo28730644editdlrm
parser.py306760644editdlrm
parser.pyc288520644editdlrm
parser.pyo288520644editdlrm
runtime.py176050644editdlrm
runtime.pyc214470644editdlrm
runtime.pyo214110644editdlrm
sandbox.py92600644editdlrm
sandbox.pyc97180644editdlrm
sandbox.pyo97180644editdlrm
tests.py32660644editdlrm
tests.pyc49220644editdlrm
tests.pyo49220644editdlrm
utils.py248940644editdlrm
utils.pyc315080644editdlrm
utils.pyo315080644editdlrm
visitor.py33160644editdlrm
visitor.pyc38500644editdlrm
visitor.pyo38500644editdlrm
_ipysupport.py9490644editdlrm
_ipysupport.pyc17760644editdlrm
_ipysupport.pyo17760644editdlrm
_speedups.so82320755editdlrm
_stringdefs.py4042560644editdlrm
_stringdefs.pyc2085250644editdlrm
_stringdefs.pyo2085250644editdlrm
__init__.py21950644editdlrm
__init__.pyc23960644editdlrm
__init__.pyo23960644editdlrm
Edit: /usr/lib64/python2.6/site-packages/jinja2/parser.pyo (28852B)
Ñò 'ÈyJc@sždZddklZddklZlZddklZeddddd d d d d dg ƒZ eddddddgƒZ de fd„ƒYZ dS(s¨ jinja2.parser ~~~~~~~~~~~~~ Implements the template parser. :copyright: (c) 2009 by the Jinja Team. :license: BSD, see LICENSE for more details. iÿÿÿÿ(tnodes(tTemplateSyntaxErrortTemplateAssertionError(tnexttfortiftblocktextendstprinttmacrotincludetfromtimporttsetteqtnetlttlteqtgttgteqtParsercBsôeZdZd1d1d1d„Zd1ed„Zd1d„Zd1d„Zd„Z e d„Z d„Z d„Z d „Zd „Zd „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zee d1d„Zed„Zd„Zd„Zd„Zd„Z d„Z!d„Z"d„Z#d„Z$d„Z%d „Z&d!„Z'd"„Z(d#„Z)d$„Z*ed%„Z+e ed1d&„Z,d'„Z-d(„Z.d)„Z/d*„Z0d+„Z1d,„Z2e d-„Z3d.„Z4d1d/„Z5d0„Z6RS(2s†This is the central parsing class Jinja2 uses. It's passed to extensions and can be used to parse expressions or statements. cCs“||_|i||||ƒ|_||_||_t|_h|_x;|iiƒD]*}x!|i D]}|i |i|R1RtFor(R!R)RStiterttestt recursivetbodytelse_((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_forns  cCsßtid|iidƒiƒ}}x³|idtƒ|_|idƒ|_ t |iƒ}|idƒo4tid|ii iƒ}|g|_ |}q(n6|idƒo|id dt ƒ|_ n g|_ Pq(|S( sParse an if construct.R)sname:ifRVs name:elifs name:elses name:endifRL(s name:elifs name:elses name:endif(s name:endif(RtIfRRIR)RQRR[RNR]RR(R^R1(R!tnodeRMRDtnew_node((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pytparse_ifs"%    cCs~tidt|iƒiƒ}|iidƒi|_|iidƒ|_ |i ddt ƒ|_ |iid|iƒ|S(NR)Rs name:scopeds name:endblockRLsname:(s name:endblock( RtBlockRRR)RIR>RRHtscopedRNR1R](R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_block–s cCs1tidt|iƒiƒ}|iƒ|_|S(NR)(RtExtendsRRR)RXttemplate(R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_extendsžscCsk|iiiddƒoE|iiƒidƒo,t|iƒidj|_|iiƒn ||_|S(Ns name:withs name:withouts name:contexttwith( RR(R2tlookR[RR>t with_contexttskip(R!Ratdefault((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pytparse_import_context£s  cCs’tidt|iƒiƒ}|iƒ|_|iiidƒo6|ii ƒidƒot |_ |ii dƒn t |_ |i|t ƒS(NR)s name:ignores name:missingi(RtIncludeRRR)RXRhR(R[RkR1tignore_missingRmRRo(R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_include¬s  cCsetidt|iƒiƒ}|iƒ|_|iidƒ|idt ƒi |_ |i |t ƒS(NR)sname:ast name_only(RtImportRRR)RXRhRIRPR1RRSRoR(R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_import·s cs–tidtˆiƒiƒ‰ˆiƒˆ_ˆiidƒgˆ_‡‡fd†}x ˆioˆiidƒnˆii i djoÒ|ƒoPnˆi dt ƒ}|i idƒoˆid|id tƒnˆiid ƒo2ˆi dt ƒ}ˆii|i |i fƒnˆii|i ƒ|ƒpˆii i djoPqbq[Pq[tˆd ƒptˆ_ˆiidƒnˆS( NR)s name:importcs`ˆiiidjoFˆiiƒidƒo-tˆiƒidjˆ_ˆiiƒtSt S(NRjtwithouts name:context(swithRv( RR(R>RkR[RRlRmR1R((RaR!(s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_contextÄs  tcommaRRst_s4names starting with an underline can not be importedR+sname:asRl(Rt FromImportRRR)RXRhRItnamesR(R0RPR1Rt startswithR,RRHtappendthasattrRRl(R!RwRStalias((RaR!s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_from¾s6          cCsÍg|_}g|_}|iidƒxŒ|iiidjou|o|iidƒn|idtƒ}|idƒ|ii dƒo|i |i ƒƒn|i |ƒq-W|iidƒdS(NtlparenR/RxRstparamRO( targstdefaultsRRIR(R0RPR1tset_ctxRHR}RX(R!RaRƒR„targ((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pytparse_signatureås   cCs¯tidt|iƒiƒ}|iiidjo|i|ƒng|_g|_ |i ƒ|_ t |i ti ƒp|id|iƒn|iddtƒ|_|S(NR)Rs expected calls name:endcallRL(s name:endcall(Rt CallBlockRRR)R(R0R‡RƒR„RXR<t isinstancetCallR,RNR1R](R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRAós  cCsRtidt|iƒiƒ}|iddtƒ|_|i ddtƒ|_ |S(NR)t start_inlinesname:endfilterRL(sname:endfilter( Rt FilterBlockRRR)t parse_filterR'R1R=RNR](R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRBs   cCs_tidt|iƒiƒ}|idtƒi|_|i|ƒ|i ddtƒ|_ |S(NR)Rss name:endmacroRL(s name:endmacro( RtMacroRRR)RPR1RR‡RNR](R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_macros    cCs}tidt|iƒiƒ}g|_xO|iiidjo8|io|iidƒn|ii|i ƒƒq*W|S(NR)R.Rx( RtOutputRRR)R(R0RIR}RX(R!Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt parse_prints  cCsµ|o4|iidƒ}ti|idd|iƒ}nC|o|idtd|ƒ}n|idt ƒ}|i dƒ|i ƒp'|i d|i iiƒ|iƒn|S(s´Parse an assignment target. As Jinja2 allows assignments to tuples, this function can parse all allowed assignment targets. Per default assignments to tuples are parsed, that can be disable however by setting `with_tuple` to `False`. If only assignments to names are wanted `name_only` can be set to `True`. The `extra_end_rules` parameter is forwarded to the tuple parsing function. RtstoreR)t simplifiedR3t with_postfixscan't assign to %r(RRIRtNameR>R)RQR1t parse_primaryRR…t can_assignR,t __class__t__name__tlower(R!t with_tupleRsR3RDRS((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRPs "   cCs|o |iƒS|iƒS(sºParse an expression. Per default all expressions are parsed, if the optional `with_condexpr` parameter is set to `False` conditional expressions are not parsed. (tparse_condexprtparse_or(R!RV((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRX1s cCs™|iii}|iƒ}xw|iidƒoc|iƒ}|iidƒo|iƒ}nd}ti|||d|ƒ}|iii}qW|S(Nsname:ifs name:elseR)( RR(R)RRHRœR'RtCondExpr(R!R)texpr1texpr2texpr3((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRœ:s  cCsm|iii}|iƒ}xK|iidƒo7|iƒ}ti||d|ƒ}|iii}qW|S(Nsname:orR)(RR(R)t parse_andRHRtOr(R!R)tlefttright((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRGs  cCsm|iii}|iƒ}xK|iidƒo7|iƒ}ti||d|ƒ}|iii}qW|S(Nsname:andR)(RR(R)t parse_notRHRtAnd(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR¢Ps  cCsL|iiidƒo,t|iƒi}ti|iƒd|ƒS|iƒS(Nsname:notR)( RR(R[RR)RtNotR¦t parse_compare(R!R)((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR¦YscCs=|iii}|iƒ}g}x÷|iii}|tjo0t|iƒ|iti ||iƒƒƒnš|ii dƒo#|iti d|iƒƒƒnd|iii dƒoL|ii ƒi dƒo3|ii dƒ|iti d|iƒƒƒnP|iii}q$|p|Sti||d|ƒS(Nsname:intinsname:notitnotinR)(RR(R)t parse_addR0t_compare_operatorsRR}RtOperandRHR[RkRmtCompare(R!R)RTtopst token_type((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR©_s&   ###cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtaddR)(RR(R)t parse_subR0RRtAdd(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR¬us   cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtsubR)(RR(R)t parse_concatR0RRtSub(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR³s   cCs‹|iii}|iƒg}x;|iiidjo$t|iƒ|i|iƒƒq!Wt|ƒdjo |dSti |d|ƒS(NttildeiiR)( RR(R)t parse_mulR0RR}tlenRtConcat(R!R)Rƒ((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR¶‰s  cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtmulR)(RR(R)t parse_divR0RRtMul(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR¹“s   cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtdivR)(RR(R)tparse_floordivR0RRtDiv(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR½s   cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtfloordivR)(RR(R)t parse_modR0RRtFloorDiv(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÀ§s   cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtmodR)(RR(R)t parse_powR0RRtMod(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRñs   cCs}|iii}|iƒ}x[|iiidjoDt|iƒ|iƒ}ti||d|ƒ}|iii}qW|S(NtpowR)(RR(R)t parse_unaryR0RRtPow(R!R)R¤R¥((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÆ»s   cCsœ|iii}|iii}|djo-t|iƒ|iƒ}ti|d|ƒS|djo-t|iƒ|iƒ}ti|d|ƒS|i ƒS(NRµR)R²( RR(R0R)RRÉRtNegtPosR–(R!R±R)Ra((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÉÅs      cCs2|ii}|idjo|idjo%ti|idjd|iƒ}nK|idjotidd|iƒ}nti|id d|iƒ}t |iƒni|id jo…t |iƒ|ig}|i}x>|iiid jo'|i |iiiƒt |iƒqáWtid i |ƒd|ƒ}nÔ|idjo,t |iƒti|id|iƒ}n˜|idjo-t |iƒ|i ƒ}|ii dƒn[|idjo|iƒ}n;|idjo|iƒ}n|id|f|iƒ|o|i|ƒ}n|S(NRttruetfalseR1RR)tnoneR'tloadtstringttintegertfloatRR/tlbrackettlbracesunexpected token '%s'(RÍRÎsTruesFalse(RÍsTrue(RÏsNone(RÓsfloat(RR(R0R>RtConstR)R'R•RR}tjoinRQRIt parse_listt parse_dictR,t parse_postfix(R!R”RDRatbufR)((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR–ÒsB    "   csüˆiii}|o‡fd†}n$|o ˆi}n‡fd†}g}t}xs|oˆiidƒnˆi|ƒoPn|i|ƒƒˆiiidjo t }nPˆiii}q[| o|o |dSt i |dd|ƒS(sçWorks like `parse_expression` but if multiple expressions are delimited by a comma a :class:`~jinja2.nodes.Tuple` node is created. This method could also return a regular expression instead of a tuple if no commas where found. The default parsing mode is a full tuple. If `simplified` is `True` only names and literals are parsed. The `no_condexpr` parameter is forwarded to :meth:`parse_expression`. Because tuples do not require delimiters and may end in a bogus comma an extra hint is needed that marks the end of a tuple. For example for loops support tuples between `for` and `in`. In that case the `extra_end_rules` is set to ``['name:in']``. csˆidtƒS(R”(R–R((R!(s3/usr/lib64/python2.6/site-packages/jinja2/parser.pytscsˆidtƒS(RV(RXR((R!(s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÝ sRxiRÐR)( RR(R)RXRRIR4R}R0R1RtTuple(R!R“RVR3R)RRƒtis_tuple((R!s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRQös*   cCs¥|iidƒ}g}xd|iiidjoM|o|iidƒn|iiidjoPn|i|iƒƒqW|iidƒti|d|iƒS(NRÕtrbracketRxR)( RRIR(R0R}RXRtListR)(R!RDtitems((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÙscCsÜ|iidƒ}g}x›|iiidjo„|o|iidƒn|iiidjoPn|iƒ}|iidƒ|iƒ}|iti||d|iƒƒqW|iidƒti |d|iƒS(NRÖtrbraceRxRGR)( RRIR(R0RXR}RtPairR)tDict(R!RDRâtkeyR>((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÚ*s  'cCs½x¶|iii}|djp |djo|i|ƒ}q|djo|i|ƒ}q|djo|i|ƒ}q|djo)|iiidjo|i|ƒ}qPq|S(NtdotRÕRtpipeRtis(RR(R0tparse_subscriptt parse_callRR>t parse_test(R!RaR±((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRÛ9s  #cCs¯t|iƒ}|idjo¨|ii}t|iƒ|idjo ti||idd|iƒS|idjo|id|iƒnti |id|iƒ}ti ||dd|iƒS|idjoÁt }g}xI|iiidjo2|o|ii d ƒn|i |iƒƒqæW|ii dƒt|ƒd jo|d }nti|dd|iƒ}ti ||dd|iƒS|id |iƒdS( NRçRRÐR)RÓsexpected name or numberRÕRàRxiisexpected subscript expression(RRR0R(RtGetattrR>R)R,R×tGetitemRRIR}tparse_subscribedRºRÞ(R!RaRDt attr_tokenR†tpriority_on_attributeRƒ((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRêHs2   cCs^|iii}|iiidjot|iƒdg}n>|iƒ}|iiidjo|St|iƒ|g}|iiidjo|idƒn;|iiidjo|i|iƒƒn|idƒ|iiidjoKt|iƒ|iiidjo|i|iƒƒqK|idƒn|idƒti d||ŒS(NRGRàRxR)(srbracketscomma(srbracketscomma( RR(R)R0RR'RXR}RtSlice(R!R)RƒRa((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRïcs*        c s8ˆiidƒ‰g}g}d}}t}‡‡fd†}x¥ˆiiidjoŽ|o/ˆiidƒˆiiidjoPqnˆiiidjo:||djo |djƒtˆiƒˆiƒ}nÿˆiiidjo-||djƒtˆiƒˆiƒ}n¼||djo |djƒˆiiidjojˆiiƒidjoQˆiii }ˆii d ƒˆiƒ} |i t i || d | iƒƒn|| ƒ|i ˆiƒƒt}qCWˆiidƒ|djo||||fSt i|||||d ˆiƒS( NRcs"|pˆidˆiƒndS(Ns+invalid syntax for function call expression(R,R)(RT(R!RD(s3/usr/lib64/python2.6/site-packages/jinja2/parser.pytensure‰s R/RxR¼RÈRROiR)(RRIR'RR(R0RRXRkR>RmR}RtKeywordR)R1RŠ( R!RaRƒtkwargstdyn_argst dyn_kwargst require_commaRóRæR>((R!RDs3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRë‚sH        c Csx|iiidjp|o÷|pt|iƒn|iidƒ}|i}xE|iiidjo.t|iƒ|d|iidƒi7}qVW|iiidjo|idƒ\}}}}ng}g}d}}ti ||||||d|i ƒ}t }qW|S(NRèRRçt.RR)( RR(R0RRIR>RëR'RtFilterR)R( R!RaR‹RDRRƒRõRöR÷((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR±s&  "  c Cs¥t|iƒ}|iiidƒot|iƒt}nt}|iidƒi}xE|iiidjo.t|iƒ|d|iidƒi7}qZWd}}g}|iiidjo|i dƒ\}}}}nt|iiidjoW|iii d d d ƒ o:|iiidƒo|i dƒn|i ƒg}ng}ti||||||d|iƒ}|oti|d|iƒ}n|S(Nsname:notRRçRùRRÑRÓRÔRÕRÖs name:elsesname:orsname:andsname:iss'You cannot chain multiple tests with isR)(snamesstringsintegersfloatslparenslbracketslbrace(RRR(R[R1RRIR>R0R'RëR2R,RXRtTestR)R¨( R!RaRDtnegatedRRöR÷RõRƒ((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRìÅs8   "    cs‹g‰g‰ˆi}‡‡fd†}xV|ioK|ii}|idjo>|io#|ti|id|iƒƒnt|iƒq*|idjo7t|iƒ||i dt ƒƒ|ii dƒq*|idjoŠ|ƒt|iƒ|dj o|iii |ŒoˆS|iƒ}t|tƒoˆi|ƒnˆi|ƒ|ii dƒq*td ƒ‚q*W|ƒˆS( Ncs=ˆo2ˆdi}ˆitiˆd|ƒƒˆ2ndS(NiR)(R)R}RR(R)(R]t data_buffer(s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt flush_dataés tdataR)tvariable_beginRVR-t block_beginR.sinternal parsing error(R}RR(R0R>Rt TemplateDataR)RRQR1RIR'R2RFR‰tlisttextendtAssertionError(R!RKtadd_dataRþRDR9((R]Rýs3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRJäs<         cCs/ti|iƒddƒ}|i|iƒ|S(s0Parse the whole template into a `Template` node.R)i(RtTemplateRJtset_environmentR(R!RM((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyR sN(7R™t __module__t__doc__R'R&RR,R4R:RFRRNRUR_RcRfRiRoRrRuR€R‡RARBRR‘R1RPRXRœRR¢R¦R©R¬R³R¶R¹R½RÀRÃRÆRÉR–RQRÙRÚRÛRêRïRëRRìRJR(((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyRsh            '         $ '     /   (N( R tjinja2Rtjinja2.exceptionsRRt jinja2.utilsRt frozensetR?R­R5R(((s3/usr/lib64/python2.6/site-packages/jinja2/parser.pyt s