Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork33.7k
Closed
Description
Bug report
Bug description:
Running this file:
importsymtablest=symtable.symtable("""class X: class Nested: pass type Alias = int x = (x for x in range(10)) y = filter(lambda z: z % 2, range(10))""","mod","exec")cls=st.get_children()[0]print(cls.get_methods())
Prints:
('Nested', 'Alias', 'genexpr', 'lambda')None of these are methods.
@carljm and I noticed this as part of the work on PEP 649 (#119361 (comment)). My draft implementation excludes generated__annotate__ functions from the list of "methods", but perhaps all non-methods should be excluded.
CPython versions tested on:
3.12, CPython main branch
Operating systems tested on:
macOS
Linked PRs
- gh-119698: deprecate
symtable.Class.get_methods#120148 - gh-119698: fix
symtable.Class.get_methodsand document its behaviour correctly #120151 - [3.12] gh-119698: fix
symtable.Class.get_methodsand document its behaviour correctly (#120151) #120776 - [3.13] gh-119698: fix
symtable.Class.get_methodsand document its behaviour correctly (GH-120151) #120777 - gh-119698: symtable: Fix merge race #120779
- gh-119698: fix a special case in
symtable.Class.get_methods#121802 - gh-119698: deprecate
symtable.Class.get_methods#121902 - [3.13] gh-119698: fix a special case in
symtable.Class.get_methods(GH-121802) #121909 - [3.12] gh-119698: fix a special case in
symtable.Class.get_methods(GH-121802) #121910