X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=bindings%2Fpython%2Fnotmuch%2Ftag.py;h=fbb18ce47f004fe137a59ef13893f72481b276a9;hb=5ae8ae13ba9190fc9915dced0be6cfb382bba308;hp=9b18160c3d895c501a4cba5a05f875a9b6b78149;hpb=1f08664a6b8f7cba63f63855833f877b66bbbe05;p=notmuch
diff --git a/bindings/python/notmuch/tag.py b/bindings/python/notmuch/tag.py
index 9b18160c..fbb18ce4 100644
--- a/bindings/python/notmuch/tag.py
+++ b/bindings/python/notmuch/tag.py
@@ -12,12 +12,12 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
-along with notmuch. If not, see .
+along with notmuch. If not, see .
Copyright 2010 Sebastian Spaeth
"""
from ctypes import c_char_p
-from notmuch.globals import (
+from .globals import (
nmlib,
Python3StringMixIn,
NotmuchTagsP,
@@ -64,7 +64,7 @@ class Tags(Python3StringMixIn):
def __init__(self, tags_p, parent=None):
"""
:param tags_p: A pointer to an underlying *notmuch_tags_t*
- structure. These are not publically exposed, so a user
+ structure. These are not publicly exposed, so a user
will almost never instantiate a :class:`Tags` object
herself. They are usually handed back as a result,
e.g. in :meth:`Database.get_all_tags`. *tags_p* must be
@@ -109,15 +109,15 @@ class Tags(Python3StringMixIn):
next = __next__ # python2.x iterator protocol compatibility
def __nonzero__(self):
- """Implement bool(Tags) check that can be repeatedly used
+ '''
+ Implement truth value testing. If __nonzero__ is not
+ implemented, the python runtime would fall back to `len(..) >
+ 0` thus exhausting the iterator.
- If __nonzero__ is not implemented, "if Tags()"
- will implicitly call __len__, using up our iterator, so it is
- important that this function is defined.
-
- :returns: True if the Tags() iterator has at least one more Tag
- left."""
- return self._valid(self._tags) > 0
+ :returns: True if the wrapped iterator has at least one more object
+ left.
+ '''
+ return self._tags and self._valid(self._tags)
def __unicode__(self):
"""string representation of :class:`Tags`: a space separated list of tags
@@ -137,5 +137,5 @@ class Tags(Python3StringMixIn):
def __del__(self):
"""Close and free the notmuch tags"""
- if self._tags is not None:
+ if self._tags:
self._destroy(self._tags)