pytorch
4f1f14e3 - [JIT] Skip builtins while enumerating class methods (#91805)

Commit
1 year ago
[JIT] Skip builtins while enumerating class methods (#91805) This is needed to support `enum.Enum` derived classes in Python-3.11 that adds `_new_member_` to classdict, see: https://github.com/python/cpython/blob/15c44789bb125b93e96815a336ec73423c47508e/Lib/enum.py#L529 Following snippet illustrates the problem with the previous iteration of the code on 3.11: ```python from enum import Enum import inspect class Color(Enum): RED = 1 GREEN = 2 def print_routines(cls): print(cls.__name__) for name in cls.__dict__: fn = getattr(cls, name) if inspect.isroutine(fn): print(name, fn, f"has_globals: {hasattr(fn, '__globals__')}") print_routines(Color) ``` Pull Request resolved: https://github.com/pytorch/pytorch/pull/91805 Approved by: https://github.com/albanD, https://github.com/suo
Author
Committer
Parents
Loading