ó \STc@sMdZddlmZddlmZddlmZddd„ƒYZdS( s Node Iterators from DOM Level 2. Allows "flat" iteration over nodes. WWW: http://4suite.com/4DOM e-mail: support@4suite.com Copyright (c) 2000 Fourthought Inc, USA. All Rights Reserved. See http://4suite.com/COPYRIGHT for license and copyright information iĸĸĸĸ(t NodeFilter(tNoModificationAllowedErr(tInvalidStateErrt NodeIteratorcBs}eZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „ZRS( cCsy||jd<||jd<||jd<||jd|ra|j|ƒoN|j|ƒtjk ra|jƒ}q$W|S(N(R Rt_advancet_checkWhatToShowt _checkFilterRt FILTER_ACCEPT(Rt next_node((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pytnextNode1s    cCsf|jrtƒ‚n|jƒ}x>|ra|j|ƒoN|j|ƒtjk ra|jƒ}q$W|S(N(R Rt_regressRRRR(Rt prev_node((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyt previousNode;s    cCs d|_dS(Ni(R (R((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pytdetachEscCsĻd}|jr$d|_|j}n€|jsĪ|j}|jrK|j}n;x8||jk r|jrs|j}Pn|j}qNWd}|r˜||_qĪd|_n|S(Nii(tNoneRR R t firstChildRt nextSiblingt parentNode(Rtnodetcurrent((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyRHs$            cCsĢd}|jr$d|_|j}n{|jsŸ|j}||jkrNd}n3|jrx|j}|jr|j}qn |j}|r“||_qŸd|_n|S(Nii(R!R R RRtpreviousSiblingt lastChildR$(RR%R&((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyRcs"            cCsd|jd>}|j|@S(Ni(tnodeTypeR(RR%tshow_bit((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyRxscCs$|jr|jj|ƒStjSdS(N(Rt acceptNodeRR(RR%((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyR|s (t__name__t __module__RRRRRRRRR RRRR(((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyRs         N((t__doc__Rtxml.domRRR(((sH/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/NodeIterator.pyt s