1
1
import collections
2
+
3
+ try :
4
+ from collections .abc import Hashable , Mapping
5
+ except ImportError : # Python < 3.3
6
+ from collections import Hashable , Mapping
2
7
import copy
3
8
4
9
from ..language import ast
@@ -234,7 +239,7 @@ def define_field_map(
234
239
if callable (field_map ):
235
240
field_map = field_map ()
236
241
237
- assert isinstance (field_map , collections . Mapping ) and len (field_map ) > 0 , (
242
+ assert isinstance (field_map , Mapping ) and len (field_map ) > 0 , (
238
243
"{} fields must be a mapping (dict / OrderedDict) with field names as keys or a "
239
244
"function which returns such a mapping."
240
245
).format (type )
@@ -248,7 +253,7 @@ def define_field_map(
248
253
249
254
if field_args :
250
255
assert isinstance (
251
- field_args , collections . Mapping
256
+ field_args , Mapping
252
257
), "{}.{} args must be a mapping (dict / OrderedDict) with argument names as keys." .format (
253
258
type , field_name
254
259
)
@@ -520,15 +525,15 @@ def serialize(self, value):
520
525
if isinstance (value , PyEnum ):
521
526
# We handle PyEnum values
522
527
value = value .value
523
- if isinstance (value , collections . Hashable ):
528
+ if isinstance (value , Hashable ):
524
529
enum_value = self ._value_lookup .get (value )
525
530
if enum_value :
526
531
return enum_value .name
527
532
528
533
return None
529
534
530
535
def parse_value (self , value ):
531
- if isinstance (value , collections . Hashable ):
536
+ if isinstance (value , Hashable ):
532
537
enum_value = self ._name_lookup .get (value )
533
538
534
539
if enum_value :
@@ -555,7 +560,7 @@ def _name_lookup(self):
555
560
556
561
def define_enum_values (type , value_map ):
557
562
assert (
558
- isinstance (value_map , collections . Mapping ) and len (value_map ) > 0
563
+ isinstance (value_map , Mapping ) and len (value_map ) > 0
559
564
), "{} values must be a mapping (dict / OrderedDict) with value names as keys." .format (
560
565
type
561
566
)
@@ -661,7 +666,7 @@ def _define_field_map(self):
661
666
else :
662
667
fields = self ._fields
663
668
664
- assert isinstance (fields , collections . Mapping ) and len (fields ) > 0 , (
669
+ assert isinstance (fields , Mapping ) and len (fields ) > 0 , (
665
670
"{} fields must be a mapping (dict / OrderedDict) with field names as keys or a "
666
671
"function which returns such a mapping."
667
672
).format (self )
0 commit comments