summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Kögl <stefan@skoegl.net>2013-07-11 21:50:31 +0200
committerStefan Kögl <stefan@skoegl.net>2013-07-11 21:50:31 +0200
commit48dce313141ba5bf0d2f3dd2e590042c05755e53 (patch)
treecaec49dbb2ee9555de01da8de7f1b3ae10ec819a
parentef7a41cdceca4e3f05e56468214a048500ab6973 (diff)
downloadpython-json-pointer-48dce313141ba5bf0d2f3dd2e590042c05755e53.tar.gz
refactor type checkbaserock/morph
-rw-r--r--jsonpointer.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/jsonpointer.py b/jsonpointer.py
index 050d48c..fe7914a 100644
--- a/jsonpointer.py
+++ b/jsonpointer.py
@@ -175,6 +175,10 @@ class JsonPointer(object):
part = self.get_part(doc, part)
+ # type is already checked in get_part, so we assert here
+ # for consistency
+ assert type(doc) in (dict, list), "invalid document type %s" (type(doc),)
+
if isinstance(doc, dict):
try:
return doc[part]
@@ -194,11 +198,6 @@ class JsonPointer(object):
raise JsonPointerException("index '%s' is out of bounds" % (part, ))
- else:
- raise JsonPointerException("can not go beyond '%s' (type '%s')" % (part, doc.__class__))
-
-
-
def contains(self, ptr):
"""" Returns True if self contains the given ptr """
return len(self.parts) > len(ptr.parts) and \