"""returns tag's previous element."""
return self._prev_elem
+ def next_tag(self):
+ """returns tag's next tag."""
+ next = self.next()
+ while(next != None):
+ if next.is_tag():
+ break
+ next = next.next()
+ return next
+
+ def prev_tag(self):
+ """returns tag's previous tag."""
+ prev = self.prev()
+ while(prev != None):
+ if prev.is_tag():
+ break
+ prev = prev.prev()
+ return prev
+
# basic query functions
def get_elements_by_name(self, name):
buf = []
l = len(elem)
if l > 1:
elem[0]._next_elem = elem[1]
- for i in range(1, l-1):
- elem[i]._prev_elem = elem[i-1]
- elem[i]._next_elem = elem[i+1]
- if l > 1:
- elem[l-1]._prev_elem = elem[l-2]
+ elem[-1]._prev_elem = elem[-2]
+ if l > 2:
+ for i in range(1, l-1): # 1 to l-2
+ elem[i]._prev_elem = elem[i-1]
+ elem[i]._next_elem = elem[i+1]
for sub_elem in elem:
self._r_finalize(sub_elem)