Pushes all parameter targets from the given frame into a local stack that permits tracking of yet to be assigned parameters. In particular this enables the optimization from `visit_Name` to skip undefined expressions for parameters in macros as macros can reference o
(self, frame: Frame)
| 734 | self.writeline("if 0: yield None") |
| 735 | |
| 736 | def push_parameter_definitions(self, frame: Frame) -> None: |
| 737 | """Pushes all parameter targets from the given frame into a local |
| 738 | stack that permits tracking of yet to be assigned parameters. In |
| 739 | particular this enables the optimization from `visit_Name` to skip |
| 740 | undefined expressions for parameters in macros as macros can reference |
| 741 | otherwise unbound parameters. |
| 742 | """ |
| 743 | self._param_def_block.append(frame.symbols.dump_param_targets()) |
| 744 | |
| 745 | def pop_parameter_definitions(self) -> None: |
| 746 | """Pops the current parameter definitions set.""" |
no test coverage detected