diff options
author | Ilya Etingof <etingof@gmail.com> | 2017-03-01 02:13:07 +0100 |
---|---|---|
committer | Ilya Etingof <etingof@gmail.com> | 2017-03-01 02:13:07 +0100 |
commit | 01ae2f2183c5ba882849060a68e28715ffb2ae48 (patch) | |
tree | e053e803e04a7fc01196125db186b9faabb0ff00 /pyasn1/type/base.py | |
parent | 3636cfab0407307cd8707af106776cc954499db4 (diff) | |
download | pyasn1-01ae2f2183c5ba882849060a68e28715ffb2ae48.tar.gz |
more efficient constrains computation
Diffstat (limited to 'pyasn1/type/base.py')
-rw-r--r-- | pyasn1/type/base.py | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/pyasn1/type/base.py b/pyasn1/type/base.py index f65db7e..f1fdb8b 100644 --- a/pyasn1/type/base.py +++ b/pyasn1/type/base.py @@ -37,13 +37,6 @@ class Asn1ItemBase(Asn1Item): else: self._subtypeSpec = subtypeSpec - def _verifySubtypeSpec(self, value, idx=None): - try: - self._subtypeSpec(value, idx) - except error.PyAsn1Error: - c, i, t = sys.exc_info() - raise c('%s at %s' % (i, self.__class__.__name__)) - def getSubtypeSpec(self): return self._subtypeSpec @@ -172,7 +165,13 @@ class AbstractSimpleAsn1Item(Asn1ItemBase): value = self.defaultValue else: value = self.prettyIn(value) - self._verifySubtypeSpec(value) + try: + self._subtypeSpec(value) + + except error.PyAsn1Error: + exType, exValue, exTb = sys.exc_info() + raise exType('%s at %s' % (exValue, self.__class__.__name__)) + self.__hashedValue = None self._value = value self._len = None |