diff options
author | Timothy Edmund Crosley <timothy.crosley@gmail.com> | 2014-02-08 18:36:31 -0500 |
---|---|---|
committer | Timothy Edmund Crosley <timothy.crosley@gmail.com> | 2014-02-08 18:36:31 -0500 |
commit | 64695da0ecc614edbd089ed8f6d9823097755e3c (patch) | |
tree | ce36abc97d428c541251d7067e55bae9bef8ed16 /pies/overrides.py | |
parent | 8695fabc80c4489bfedea702c084d328ed42a20a (diff) | |
parent | bcf5369c9b97d91874517be61af57e01714041ca (diff) | |
download | pies-64695da0ecc614edbd089ed8f6d9823097755e3c.tar.gz |
Merge pull request #17 from timothycrosley/feature/fix-issue-16
Manually determine instance type if not provided by abc in installed pyt...
Diffstat (limited to 'pies/overrides.py')
-rw-r--r-- | pies/overrides.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pies/overrides.py b/pies/overrides.py index 751013a..821ba49 100644 --- a/pies/overrides.py +++ b/pies/overrides.py @@ -211,10 +211,15 @@ else: def __instancecheck__(cls, instance): if cls.__name__ == "object": return isinstance(instance, native_object) - + subclass = getattr(instance, '__class__', None) subtype = type(instance) - if subtype is abc._InstanceType: + instance_type = getattr(abc, '_InstanceType', None) + if not instance_type: + class test_object: + pass + instance_type = type(test_object) + if subtype is instance_type: subtype = subclass if subtype is subclass or subclass is None: return cls.__subclasscheck__(subtype) |