Skip to content

Commit da5fd41

Browse files
committed
type checking fixes
1 parent 0e27979 commit da5fd41

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

src/jsonparse/parser.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ def find_key(self, data, key):
6868

6969
if type(elem) is list:
7070
self._stack_push_list_elem(elem)
71-
elif type(elem) is dict or type(elem) is OrderedDict:
71+
elif isinstance(elem, (dict, OrderedDict)):
7272
value = self._stack_all_key_values_in_dict(key, elem)
7373
if value:
7474
for v in value:
@@ -96,7 +96,7 @@ def find_keys(self, data, keys, group=True):
9696

9797
if type(elem) is list:
9898
self._stack_push_list_elem(elem)
99-
elif type(elem) is dict or type(elem) is OrderedDict:
99+
elif isinstance(elem, (dict, OrderedDict)):
100100
value = self._stack_all_keys_values_in_dict(keys, elem)
101101
if value and group:
102102
value_list.insert(0, value)
@@ -133,7 +133,7 @@ def find_key_chain(self, data, keys):
133133

134134
if type(elem) is list:
135135
self._queue_push_list_elem(elem)
136-
elif type(elem) is dict or type(elem) is OrderedDict:
136+
elif isinstance(elem, (dict, OrderedDict)):
137137
if self._queue_all_key_values_in_dict(keys[0], elem):
138138
key_found = True
139139
else: # according to RFC 7159, valid JSON can also contain a
@@ -164,7 +164,7 @@ def find_key_value(self, data, key, value):
164164

165165
if type(elem) is list:
166166
self._stack_push_list_elem(elem)
167-
elif type(elem) is dict or type(elem) is OrderedDict:
167+
elif isinstance(elem, (dict, OrderedDict)):
168168
if self._stack_all_key_and_value_in_dict(key, value, elem):
169169
value_list.insert(0, elem)
170170
else: # according to RFC 7159, valid JSON can also contain a
@@ -190,7 +190,7 @@ def find_value(self, data, value):
190190

191191
if type(elem) is list:
192192
self._stack_push_list_elem(elem)
193-
elif type(elem) is dict or type(elem) is OrderedDict:
193+
elif isinstance(elem, (dict, OrderedDict)):
194194
key = self._stack_all_value_in_dict(value, elem)
195195
if key:
196196
key_list.insert(0, key)
@@ -245,7 +245,7 @@ def _stack_all_key_values_in_dict(self, key, elem):
245245
# type: (str, dict) -> list
246246
value_list = []
247247

248-
if type(elem) is not dict or type(elem) is not OrderedDict:
248+
if not isinstance(elem, (dict, OrderedDict)):
249249
raise TypeError
250250
elif type(key) is not str:
251251
raise TypeError
@@ -265,7 +265,7 @@ def _stack_all_keys_values_in_dict(self, keys, elem):
265265
# type: (list, dict) -> list
266266
value_list = []
267267

268-
if type(elem) is not dict or type(elem) is not OrderedDict:
268+
if not isinstance(elem, (dict, OrderedDict)):
269269
raise TypeError
270270
elif type(keys) is not list:
271271
raise TypeError
@@ -286,7 +286,7 @@ def _stack_all_keys_values_in_dict(self, keys, elem):
286286

287287
def _stack_all_key_and_value_in_dict(self, key, value, elem):
288288
# type: (str, Union[str, int, float, bool, None], dict) -> bool
289-
if type(elem) is not dict or type(elem) is not OrderedDict:
289+
if not isinstance(elem, (dict, OrderedDict)):
290290
raise TypeError
291291
elif type(key) is not str:
292292
raise TypeError
@@ -306,7 +306,7 @@ def _stack_all_key_and_value_in_dict(self, key, value, elem):
306306

307307
def _stack_all_value_in_dict(self, value, elem):
308308
# type: (Union[str, int, float, bool, None], dict) -> str
309-
if type(elem) is not dict or type(elem) is not OrderedDict:
309+
if not isinstance(elem, (dict, OrderedDict)):
310310
raise TypeError
311311
elif not isinstance(value, (str, int, float, bool, type(None))):
312312
raise TypeError
@@ -375,7 +375,7 @@ def _queue_push_list_elem(self, elem):
375375
def _queue_all_key_values_in_dict(self, key, elem):
376376
# type: (str, dict) -> bool
377377
found = False
378-
if type(elem) is not dict or type(elem) is not OrderedDict:
378+
if not isinstance(elem, (dict, OrderedDict)):
379379
raise TypeError
380380
elif type(key) is not str:
381381
raise TypeError

0 commit comments

Comments
 (0)