Perform some sort of analysis on nonlocals, globals etc.. See also: https://github.com/python/cpython/blob/main/Python/symtable.c#L410 */
(symbol_table: &mut SymbolTable)
| 269 | See also: https://github.com/python/cpython/blob/main/Python/symtable.c#L410 |
| 270 | */ |
| 271 | fn analyze_symbol_table(symbol_table: &mut SymbolTable) -> SymbolTableResult { |
| 272 | let mut analyzer = SymbolTableAnalyzer::default(); |
| 273 | // Discard the newfree set at the top level - it's only needed for propagation |
| 274 | // Pass None for class_entry at top level |
| 275 | let _newfree = analyzer.analyze_symbol_table(symbol_table, None)?; |
| 276 | Ok(()) |
| 277 | } |
| 278 | |
| 279 | /* Drop __class__ and __classdict__ from free variables in class scope |
| 280 | and set the appropriate flags. Equivalent to CPython's drop_class_free(). |
no test coverage detected