MCPcopy Index your code
hub / github.com/python/cpython / print_symbols

Function print_symbols

Lib/symtable.py:422–437  ·  view source on GitHub ↗
(table, level=0)

Source from the content-addressed store, hash-verified

420def main(args):
421 import sys
422 def print_symbols(table, level=0):
423 indent = ' ' * level
424 nested = "nested " if table.is_nested() else ""
425 if table.get_type() == 'module':
426 what = f'from file {table._filename!r}'
427 else:
428 what = f'{table.get_name()!r}'
429 print(f'{indent}symbol table for {nested}{table.get_type()} {what}:')
430 for ident in table.get_identifiers():
431 symbol = table.lookup(ident)
432 flags = ', '.join(symbol._flags_str()).lower()
433 print(f' {indent}{symbol._scope_str().lower()} symbol {symbol.get_name()!r}: {flags}')
434 print()
435
436 for table2 in table.get_children():
437 print_symbols(table2, level + 1)
438
439 for filename in args or ['-']:
440 if filename == '-':

Callers 1

mainFunction · 0.85

Calls 10

is_nestedMethod · 0.80
get_typeMethod · 0.80
_flags_strMethod · 0.80
_scope_strMethod · 0.80
get_nameMethod · 0.45
get_identifiersMethod · 0.45
lookupMethod · 0.45
lowerMethod · 0.45
joinMethod · 0.45
get_childrenMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…