Push the annotation symbol table for module/class level annotations This takes annotation_block from the current symbol table (not sub_tables)
(&mut self)
| 861 | /// Push the annotation symbol table for module/class level annotations |
| 862 | /// This takes annotation_block from the current symbol table (not sub_tables) |
| 863 | fn push_current_annotation_symbol_table(&mut self) -> bool { |
| 864 | let current_table = self |
| 865 | .symbol_table_stack |
| 866 | .last_mut() |
| 867 | .expect("no current symbol table"); |
| 868 | |
| 869 | // For modules/classes, annotation_block is directly in the current table |
| 870 | if let Some(annotation_block) = current_table.annotation_block.take() { |
| 871 | self.symbol_table_stack.push(*annotation_block); |
| 872 | true |
| 873 | } else { |
| 874 | false |
| 875 | } |
| 876 | } |
| 877 | |
| 878 | /// Pop the annotation symbol table and restore it to the function scope's annotation_block |
| 879 | fn pop_annotation_symbol_table(&mut self) { |
no test coverage detected