mò )á¸Ec@súdZdklZdklZdklZlZdefd„ƒYZ defd„ƒYZ dfd „ƒYZ d e fd „ƒYZ d e fd „ƒYZ de fd„ƒYZde fd„ƒYZdefd„ƒYZdefd„ƒYZdS(s7Generic parser support: exception and parse tree nodes.(s difference(sIQueryParseTree(smass_weightedIntersectionsmass_weightedUniont QueryErrorcBstZRS(N(t__name__t __module__(((t=/data/zmath/zope/lib/python/Products/ZCTextIndex/ParseTree.pyRst ParseErrorcBstZRS(N(RR(((RRst ParseTreeNodecBsJtZeZdZd„Zd„Zd„Zd„Z d„Z d„Z RS(NcCs ||_dS(N(tvaluetselft_value(RR((Rt__init__#scCs|iS(N(Rt _nodeType(R((RtnodeType&scCs|iS(N(RR(R((RtgetValue)scCsd|ii|iƒfS(Ns%s(%r)(Rt __class__RR (R((Rt__repr__,scCs4g}x'|iƒD]}|i|iƒƒqW|S(N(ttRR tvtextendtterms(RRR((RR/s  cCs t‚dS(N(tNotImplementedError(Rtindex((Rt executeQuery5s( RRtIQueryParseTreet__implements__tNoneR R R R RRR(((RRs     tNotNodecBs tZdZd„Zd„ZRS(NtNOTcCsgS(N((R((RR<scCs td‚dS(Ns/NOT parse tree node cannot be executed directly(R(RR((RR?s(RRR RR(((RR8s tAndNodecBstZdZd„ZRS(NtANDcCsÜg}g}x—|iƒD]‰}|iƒdjo=|iƒi|ƒ}|dj o|i |dfƒq¢q|i|ƒ}|dj o|i |dfƒqqWt |ƒ}|ot |ƒ}t||ƒ}n|S(NRi(tLtNotsRR tsubnodeR RRtrRtappendtmass_weightedIntersectiontsettmass_weightedUniontnotsett difference(RRR#RRR R%R((RRFs      (RRR R(((RRBstOrNodecBstZdZd„ZRS(NtORcCsZg}xG|iƒD]9}|i|ƒ}|dj o|i|dfƒqqWt |ƒS(Ni( tweightedRR tnodeRRR RR!R$(RRR*R)R ((RRbs  (RRR R(((RR'^stAtomNodecBs tZdZd„Zd„ZRS(NtATOMcCs |iƒgS(N(RR (R((RRrscCs|i|iƒƒS(N(RtsearchRR (RR((RRus(RRR RR(((RR+ns t PhraseNodecBstZdZd„ZRS(NtPHRASEcCs|i|iƒƒS(N(Rt search_phraseRR (RR((RR|s(RRR R(((RR.xstGlobNodecBstZdZd„ZRS(NtGLOBcCs|i|iƒƒS(N(Rt search_globRR (RR((RRƒs(RRR R(((RR1sN(t__doc__tBTrees.IIBTreeR&t$Products.ZCTextIndex.IQueryParseTreeRtProducts.ZCTextIndex.SetOpsR"R$t ExceptionRRRRRR'R+R.R1( R+RRR1RRR'RR"R$R&RR.((Rt?s