summaryrefslogtreecommitdiff
path: root/pyasn1/type/base.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyasn1/type/base.py')
-rw-r--r--pyasn1/type/base.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/pyasn1/type/base.py b/pyasn1/type/base.py
index 600ae98..155ed74 100644
--- a/pyasn1/type/base.py
+++ b/pyasn1/type/base.py
@@ -101,6 +101,9 @@ class AbstractSimpleAsn1Item(Asn1ItemBase):
def __bool__(self): return bool(self._value)
def __hash__(self): return self.__hashedValue
+ def hasValue(self):
+ return not isinstance(self._value, NoValue)
+
def clone(self, value=None, tagSet=None, subtypeSpec=None):
if value is None and tagSet is None and subtypeSpec is None:
return self
@@ -132,10 +135,10 @@ class AbstractSimpleAsn1Item(Asn1ItemBase):
def prettyOut(self, value): return str(value)
def prettyPrint(self, scope=0):
- if self._value is noValue:
- return '<no value>'
- else:
+ if self.hasValue():
return self.prettyOut(self._value)
+ else:
+ return '<no value>'
# XXX Compatibility stub
def prettyPrinter(self, scope=0): return self.prettyPrint(scope)