Skip to content

Commit e85d030

Browse files
committed
Simplify closure/freevar iteration in _build_closure()
1 parent 26b7df2 commit e85d030

1 file changed

Lines changed: 1 addition & 6 deletions

File tree

Lib/annotationlib.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -835,14 +835,9 @@ def call_annotate_function(annotate, format, *, owner=None, _is_evaluate=False):
835835
def _build_closure(annotate, owner, is_class, stringifier_dict, *, allow_evaluation):
836836
if not annotate.__closure__:
837837
return None, None
838-
freevars = annotate.__code__.co_freevars
839838
new_closure = []
840839
cell_dict = {}
841-
for i, cell in enumerate(annotate.__closure__):
842-
if i < len(freevars):
843-
name = freevars[i]
844-
else:
845-
name = "__cell__"
840+
for name, cell in zip(annotate.__code__.co_freevars, annotate.__closure__):
846841
cell_dict[name] = cell
847842
new_cell = None
848843
if allow_evaluation:

0 commit comments

Comments
 (0)