Skip to main content

luaur_analysis/methods/
expr_printer_visit_dump_cfg.rs

1use crate::functions::dump_def::dump_def;
2use crate::functions::get_local_name::get_local_name;
3use crate::records::expr_printer::ExprPrinter;
4use luaur_ast::records::ast_expr::AstExpr;
5use luaur_ast::records::ast_expr_local::AstExprLocal;
6
7impl ExprPrinter {
8    pub fn visit_ast_expr_local(&mut self, node: *mut AstExprLocal) -> bool {
9        unsafe {
10            if let Some(def) = self.use_defs.find(&(node as *mut AstExpr)) {
11                self.result.push_str(&dump_def(*def));
12            } else {
13                self.result.push_str(&get_local_name((*node).local));
14                self.result.push('?');
15            }
16        }
17        false
18    }
19}