Skip to main content

luaur_ast/methods/
printer_visualize_pretty_printer.rs

1use crate::records::ast_local::AstLocal;
2use crate::records::position::Position;
3use crate::records::printer::Printer;
4
5impl<'a> Printer<'a> {
6    pub fn visualize_ast_local_position(&mut self, local: &AstLocal, colon_position: Position) {
7        self.advance(&local.location.begin);
8
9        let name_val = local.name.value;
10        let name_str = unsafe { core::ffi::CStr::from_ptr(name_val).to_string_lossy() };
11        self.writer.identifier(&name_str);
12        if self.write_types && !local.annotation.is_null() {
13            self.maybe_advance_and_write(&colon_position, ":", true);
14            unsafe {
15                self.visualize_type_annotation(&mut *local.annotation);
16            }
17        }
18    }
19}