ó ?ìm>c@s›dZddlZddlZddlZddlmZddlmZddlm Z m Z ddlm Z ddlm Z ddlm Z mZdd lmZdd lmZdd lmZdd lmZddlZd ejfd„ƒYZdd5d„ƒYZdefd„ƒYZdd6d„ƒYZd„Zdd7d„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZd d8d!„ƒYZd"d9d#„ƒYZ d$d:d%„ƒYZ!d&d;d'„ƒYZ"d(d<d)„ƒYZ#ej$ej%ej&gZ'd*d=d+„ƒYZ(d,d>d-„ƒYZ)d.d?d/„ƒYZ*dd0lm+Z+m,Z,d1d@d2„ƒYZ-d3dAd4„ƒYZ.dS(Bs The implementation of all of the expression pared tokens. WWW: http://4suite.org/XPATH e-mail: support@4suite.org Copyright (c) 2000-2001 Fourthought Inc, USA. All Rights Reserved. See http://4suite.org/COPYRIGHT for license and copyright information iÿÿÿÿN(tEMPTY_NAMESPACE(t SplitQName(tCompiletimeExceptiontRuntimeException(tg_extFunctions(tParsedNodeTest(t CoreFunctionst Conversions(tUtil(t ParsedStep(tParsedAxisSpecifier(tbooleantNodeSetcBseZdd„Zd„ZRS(cCstjj||pgƒdS(N(tUserListt__init__(tselftdata((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRscCsjdt|ƒ}t|ƒr\x&|d D]}|t|ƒd}q'W|t|dƒ}n|d}|S(Ns(tidtlentrepr(Rtstti((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyt__repr__ s  N(t__name__t __module__tNoneRR(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR s tParsedLiteralExprcBs8eZd„Zd„Zdd„Zd„Zd„ZRS(cCs\t|ƒdkrO|ddkrO|d|dkrOtj|ƒdd!}n||_dS(Niis't"iÿÿÿÿi(s'R(Rtstringtstript_literal(Rtliteral((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR+s cCs|jS(N(R(Rtcontext((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pytevaluate2stcCs|t|ƒGHdS(N(tstr(Rtindent((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pytpprint5scCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyt__str__8scCsd|jdS(NR(R(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR;s(RRRR!R%R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR*s     tParsedNLiteralExprcBs/eZd„Zdd„Zd„Zd„ZRS(cCs,tj|dƒ||_t|ƒ|_dS(NR"(RRt _nliteraltfloatR(Rtnliteral((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR@s R"cCs|t|ƒGHdS(N(R#(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%EscCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&HscCs t|jƒS(N(R#R((R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRKs(RRRR%R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR'?s   tParsedVariableReferenceExprcBs8eZd„Zd„Zdd„Zd„Zd„ZRS(cCs ||_t|dƒ|_dS(Ni(t_nameRt_key(Rtname((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyROs cCs•|j\}}|jj|ƒ}|rC| rCttj|ƒ‚n|rO|pRt|f}y|j|SWn$ttj|d|dƒ‚nXdS(sReturns a stringiiN(R-t processorNsstgetRtUNDEFINED_PREFIXRt varBindingstUNDEFINED_VARIABLE(RR tprefixtlocalturitexpanded((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!Ts  R"cCs|t|ƒGHdS(N(R#(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%ascCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&dscCs|jS(N(R,(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRgs(RRRR!R%R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR+Ns    cCs§tj|ƒ}t|ƒ}t|ƒ}|dkrCt|||ƒS|dkr_t|||ƒS|dkr{t|||ƒS|dkr—t|||ƒSt|||ƒS(Niiii( RRRRt FunctionCallt FunctionCall1t FunctionCall2t FunctionCall3t FunctionCallN(R.targstkeytcount((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pytParsedFunctionCallExprks      R8cBsSeZd„Zdd„Zd„Zd„Zd„Zd„Zd„Zd„Z RS( cCs(||_||_||_d|_dS(N(R,R-t_argsRt_func(RR.R>R=((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR{s   R"cCs8|t|ƒGHx"|jD]}|j|dƒqWdS(Ns (R#RAR%(RR$targ((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%scGstd|jƒ‚dS(NsUnknown function call: %s(t ExceptionR,(RR=((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyterror†sc Cs×|js‘|j\}}|jj|ƒ}|rL| rLttj|ƒ‚n|rX|p[t|f}tj|ƒpˆtjj||j ƒ|_ny|j|ƒ}Wn,t k rÒttj t |ƒdƒ‚nX|S(sCall the functionR"( RBR-R/R0RR1RRRREt TypeErrortWRONG_ARGUMENTSR#(RR R4R5R6R7tresult((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!‰s   cCs|j|j|jfS(N(R,R-RA(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyt__getinitargs__™scCst|ƒjƒ}|d=|S(NRB(tvarstcopy(Rtstate((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyt __getstate__œscCs#d|jjt|ƒt|ƒfS(Ns<%s at %x: %s>(t __class__RRR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&¡scCsj|jd}t|jƒrb|t|jdƒ}x,|jdD]}|dt|ƒ}qAWn|dS(Nt(iis, t)(R,RRAR(RRHRC((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR¤s  ( RRRR%RER!RIRMR&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR8zs       R9cBseZd„Zd„ZRS(cCs'tj||||ƒ|d|_dS(Ni(R8Rt_arg0(RR.R>R=((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR®sc Csì|jj|ƒ}|js£|j\}}|jj|ƒ}|r^| r^ttj|ƒ‚n|rj|pmt|f}t j|ƒpšt j j||j ƒ|_ny|j||ƒ}Wn,t k rçttj t|ƒdƒ‚nX|S(NR"(RQR!RBR-R/R0RR1RRRRERFRGR#(RR targ0R4R5R6R7RH((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!²s   (RRRR!(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR9­s R:cBseZd„Zd„ZRS(cCs4tj||||ƒ|d|_|d|_dS(Nii(R8RRQt_arg1(RR.R>R=((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRÄs c Cs|jj|ƒ}|jj|ƒ}|jsµ|j\}}|jj|ƒ}|rp| rpttj|ƒ‚n|r||pt |f}t j|ƒp¬t j j||j ƒ|_ny|j|||ƒ}Wn,t k rüttjt|ƒdƒ‚nX|S(NR"(RQR!RSRBR-R/R0RR1RRRRERFRGR#( RR RRtarg1R4R5R6R7RH((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!És   (RRRR!(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR:Ãs R;cBseZd„Zd„ZRS(cCsAtj||||ƒ|d|_|d|_|d|_dS(Niii(R8RRQRSt_arg2(RR.R>R=((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRÜs  c Cs|jj|ƒ}|jj|ƒ}|jj|ƒ}|jsÇ|j\}}|jj|ƒ}|r‚| r‚ttj |ƒ‚n|rŽ|p‘t |f}t j|ƒp¾t j j||j ƒ|_ny|j||||ƒ} Wn,tk rttjt|ƒdƒ‚nX| S(NR"(RQR!RSRURBR-R/R0RR1RRRRERFRGR#( RR RRRTtarg2R4R5R6R7RH((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!âs    (RRRR!(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR;Ûs R<cBseZd„Zd„ZRS(cCstj||||ƒdS(N(R8R(RR.R>R=((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRösc Csù|gt|d„|jƒ}|js°|j\}}|jj|ƒ}|rk| rkttj|ƒ‚n|rw|pzt|f}t j|ƒp§t j j||j ƒ|_nyt |j|ƒ}Wn,t k rôttjt|ƒdƒ‚nX|S(NcSs |j|ƒS(N(R!(txtc((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pytúsR"(tmapRARBR-R/R0RR1RRRREtapplyRFRGR#(RR R=R4R5R6R7RH((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!ùs    (RRRR!(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR<õs tParsedUnionExprcBs8eZd„Zdd„Zd„Zd„Zd„ZRS(cCs||_||_dS(N(t_leftt_right(Rtlefttright((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRs R"cCs;|t|ƒGH|jj|dƒ|jj|dƒdS(Ns (R#R]R%R^(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%scCs‹|jj|ƒ}t|ƒtgƒkr3d‚n|jj|ƒ}t|ƒtgƒkrfd‚ntj||ƒ}tj|ƒ}|S(Ns/Left Expression does not evaluate to a node sets0Right Expression does not evaluate to a node set(R]R!ttypeR^tSettUnionRt SortDocOrder(RR tlSettrSettset((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!s  cCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&$scCst|jƒdt|jƒS(Ns | (RR]R^(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR's(RRRR%R!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR\s    tParsedPathExprcBs8eZd„Zdd„Zd„Zd„Zd„ZRS(cCs€||_||_|rstjddƒ}tjdƒ}ddlm}|jgƒ}tj|||ƒ|_n d|_dS(NtnodeR"sdescendant-or-selfiÿÿÿÿ(tParsedPredicateList( R]R^RR t xml.xpathRjR t_stepR(Rt descendantR_R`tnttaxisRjtpList((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR,s  R"cCs;|t|ƒGH|jj|dƒ|jj|dƒdS(Ns (R#R]R%R^(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%8sc Csx|jj|ƒ}t|ƒtgƒkr@dt|jƒ‚n|jƒ}|jrÏg}t|ƒ}x\t|ƒD]N}||}|j||d|fƒ|jj |ƒ}t j ||ƒ}qtW|}ng}t|ƒ}xƒt|ƒD]u}||}|j||d|fƒ|j j |ƒ}t|ƒtgƒkrQt dƒ‚nt j ||ƒ}qîW|j|ƒ|S(sXEvaluate the left, then if op =// the parsedStep, then the right, push context each times$Invalid Expression for a PathExpr %sis0Right Expression does not evaluate to a Node Set(R]R!RaR#tcopyNodePosSizeRlRtrangetsetNodePosSizetselectRbRcR^RD( RR trtt origStatetrestltctrtrtsubRt((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!=s0        cCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&\scCs3|jrdpd}t|jƒ|t|jƒS(Ns//t/(RlRR]R^(Rtop((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR_s(RRRR%R!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRh+s    tParsedFilterExprcBsAeZd„Zd„Zdd„Zd„Zd„Zd„ZRS(cCs||_||_dS(N(t_filtert _predicates(Rtfiltert predicates((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRes cCs[|jj|ƒ}t|ƒtgƒkr3d‚n|rW|jj||ddƒ}n|S(s€ evaluate(context) -> node-set Evaluate our filter into a node set, filter that through the predicates. s9ParsedFilterExpr: return value must evalute to a node-settreversei(RR!RaR€R(RR tnode_set((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!is  R"cCs;|t|ƒGH|jj|dƒ|jj|dƒdS(Ns (R#RR%R€(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%uscCs ||ƒS(N((RR tindexRgRtfunc((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyt shiftContextzscCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&}scCst|jƒt|jƒS(N(RRR€(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR€s(RRRR!R%R‡R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR~ds     t ParsedOrExprcBs8eZd„Zdd„Zd„Zd„Zd„ZRS(cCs||_||_dS(N(R]R^(RR_R`((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR‡s R"cCs;|t|ƒGH|jj|dƒ|jj|dƒdS(Ns (R#R]R%R^(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%‹scCs7tj|j|ƒ}|s3tj|j|ƒ}n|S(N(RtBooleanEvaluateR]R^(RR Ru((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!scCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&–scCst|jƒdt|jƒS(Ns or (RR]R^(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR™s(RRRR%R!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRˆ†s     t ParsedAndExprcBs,eZd„Zd„Zd„Zd„ZRS(cCs||_||_dS(N(R]R^(RR_R`((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRžs cCs7tj|j|ƒ}|r3tj|j|ƒ}n|S(N(RR‰R]R^(RR Ru((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!¢scCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&¨scCst|jƒdt|jƒS(Ns and (RR]R^(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR«s(RRRR!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRŠs   tParsedEqualityExprcBs8eZd„Zd„Zdd„Zd„Zd„ZRS(cCs||_||_||_dS(N(t_opR]R^(RR}R_R`((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR±s  cCsn|jdkr$tj}tj}ntj}tj}|jj|ƒ}|jj|ƒ}t|ƒ}t|ƒ}|tj koŒ|knrßxG|D]?}t j |ƒ}x'|D]} |t j | ƒkr´|Sq´Wq˜W|S|tj ksý|tj krÊd} |tj kr!|} |} n |} |} t| ƒt krKt j} nTtj| ƒrft j} n9t| ƒtjkr‡t j } nt j | ƒ} t j } x$| D]} | | ƒ| kr¦|Sq¦W|Stj|ƒsètj|ƒr t j|ƒt j|ƒk}nW|t ks!|t krBt j|ƒt j|ƒk}nt j |ƒt j |ƒk}|rj|S|S(Nt=(RŒR ttruetfalseR]R!R^RattypestListTypeRt StringValueRt NumberTypest NumberValuet IsBooleanTypet BooleanValuet StringType(RR RŽRtlrttrrttlTypetrTypet right_currt left_currR†RgtvaltnRu((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!¶sV               !!R"cCs;|t|ƒGH|jj|dƒ|jj|dƒdS(Ns (R#R]R%R^(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%íscCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&òscCs<|jdkrd}nd}t|jƒ|t|jƒS(NRs = s != (RŒRR]R^(RR}((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRõs (RRRR!R%R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR‹°s   7  tParsedRelationalExprcBs8eZd„Zd„Zdd„Zd„Zd„ZRS(cCs||_t|tƒr?tj|jdƒƒ|_d|_n||_d|_t|tƒr‡tj|jdƒƒ|_ d|_ n||_ d|_ dS(Nii( RŒt isinstanceRRR”R!RR]t_leftLitR^t _rightLit(RtopcodeR_R`((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRÿs      cCsî|jr|j}ntj|jj|ƒƒ}|jrE|j}ntj|jj|ƒƒ}|jdkr~||k}nZ|jdkrœ||k}n<|jdkrº||k}n|jdkrØ||k}n|rçtj pítj S(Niiii( R¢R]RR”R!R£R^RŒR RŽR(RR R˜R™Ru((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!s    R"cCs¥|t|ƒGHt|jƒtjkr>|jj|dƒn|ddt|jƒGHt|jƒtjkr‡|jj|dƒn|ddt|jƒGHdS(Ns s(R#RaR]Rt InstanceTypeR%R^(RR$((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR%$scCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&/scCs~|jdkrd}nH|jdkr0d}n0|jdkrHd}n|jdkr`d}nt|jƒ|t|jƒS( Nis < is <= is > is >= (RŒRR]R^(RR}((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR2s    (RRRR!R%R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR þs    tParsedAdditiveExprcBs,eZd„Zd„Zd„Zd„ZRS(cCs||_d|_d|_t|tƒrQd|_tj|jdƒƒ|_ n ||_ t|tƒrd|_tj|jdƒƒ|_ n ||_ dS(Nii( t_signR¢R£R¡RRR”R!RR]R^(RtsignR_R`((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRAs       cCs{|jr|j}n!|jj|ƒ}tj|ƒ}|jrK|j}n!|jj|ƒ}tj|ƒ}|||jS(sreturns a number(R¢R]R!RR”R£R^R§(RR R˜R™((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!Qs    cCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&_scCs<|jdkrd}nd}t|jƒ|t|jƒS(Nis + s - (R§RR]R^(RR}((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRbs (RRRR!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR¦@s   (tInftNaNtParsedMultiplicativeExprcBs,eZd„Zd„Zd„Zd„ZRS(cCs||_||_||_dS(N(RŒR]R^(RR¤R_R`((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRms  cCsÊ|jj|ƒ}tj|ƒ}|jj|ƒ}tj|ƒ}d}|jdkrd||}nb|jdkr•|dkrˆt}qÆ||}n1|jdkrÆ|dkr¹t}qÆ||}n|S(sreturns a numberiii(R]R!RR”R^RŒRª(RR R˜R™Rw((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!rs        cCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&‡scCsf|jdkrd}n0|jdkr0d}n|jdkrHd}nt|jƒ|t|jƒS(Nis * is div is mod (RŒRR]R^(RR}((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyRŠs   (RRRR!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR«ls   tParsedUnaryExprcBs,eZd„Zd„Zd„Zd„ZRS(cCs ||_dS(N(t_exp(Rtexp((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR”scCs/|jj|ƒ}tj|ƒ}|d}|S(sreturns a numbergð¿(R­R!RR”(RR R®Ru((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR!—s cCsdt|ƒt|ƒfS(Ns(RR(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR&žscCsdt|jƒS(Nt-(RR­(R((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR¡s(RRRR!R&R(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyR¬“s   ((((((((((((((/t__doc__RR Rtxml.domRt xml.dom.extRRkRRRRRRRR R t xml.utilsR RbR RR'R+R@R8R9R:R;R<R\RhR~RˆRŠtIntTypet FloatTypetLongTypeR“R‹R R¦R©RªR«R¬(((sF/opt/freeware/lib/python2.7/site-packages/_xmlplus/xpath/ParsedExpr.pyt sD$  39"NB*'