Push decorators onto the stack in source order. For @dec1 @dec2 def foo(): stack becomes [dec1, dec2]
(&mut self, decorator_list: &[ast::Decorator])
| 2829 | /// Push decorators onto the stack in source order. |
| 2830 | /// For @dec1 @dec2 def foo(): stack becomes [dec1, dec2] |
| 2831 | fn prepare_decorators(&mut self, decorator_list: &[ast::Decorator]) -> CompileResult<()> { |
| 2832 | for decorator in decorator_list { |
| 2833 | self.compile_expression(&decorator.expression)?; |
| 2834 | } |
| 2835 | Ok(()) |
| 2836 | } |
| 2837 | |
| 2838 | /// Apply decorators: each decorator calls the function below it. |
| 2839 | /// Stack: [dec1, dec2, func] → CALL 0 → [dec1, dec2(func)] → CALL 0 → [dec1(dec2(func))] |
no test coverage detected