summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorKim van der Riet <kpvdr@apache.org>2008-06-05 20:41:54 +0000
committerKim van der Riet <kpvdr@apache.org>2008-06-05 20:41:54 +0000
commitfcb006c8ee035e6009d8cd986762dbae7b8eeffa (patch)
tree8b3423b1160415bcf33f7de862fd97df94566cc5 /python
parentdd3dc7065be453ab3c2ad73aed3ae79c8b162b0d (diff)
downloadqpid-python-fcb006c8ee035e6009d8cd986762dbae7b8eeffa.tar.gz
Minor additions to Range and RangedSet
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663730 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'python')
-rw-r--r--python/qpid/datatypes.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/python/qpid/datatypes.py b/python/qpid/datatypes.py
index 7249d5621b..7150caded2 100644
--- a/python/qpid/datatypes.py
+++ b/python/qpid/datatypes.py
@@ -168,9 +168,15 @@ class Range:
def __contains__(self, n):
return self.lower <= n and n <= self.upper
+
+ def __iter__(self):
+ i = self.lower
+ while i <= self.upper:
+ yield i
+ i += 1
def touches(self, r):
- # XXX
+ # XXX: are we doing more checks than we need?
return (self.lower - 1 in r or
self.upper + 1 in r or
r.lower - 1 in self or
@@ -223,6 +229,9 @@ class RangedSet:
def add(self, lower, upper = None):
self.add_range(Range(lower, upper))
+
+ def __iter__(self):
+ return iter(self.ranges)
def __repr__(self):
return str(self.ranges)