Skip to main content

luaur_analysis/records/
lint_format_string.rs

1use crate::records::lint_context::LintContext;
2use luaur_ast::records::ast_expr_call::AstExprCall;
3use luaur_ast::records::ast_visitor::AstVisitor;
4
5#[derive(Debug, Clone)]
6pub struct LintFormatString {
7    pub(crate) context: *mut LintContext,
8}
9
10impl AstVisitor for LintFormatString {
11    fn visit_expr_call(&mut self, node: *mut core::ffi::c_void) -> bool {
12        let node = node as *mut AstExprCall;
13        self.match_call(node);
14        true
15    }
16}
17
18// Names below are declared inside the cited C++ record range but may live in
19// nested records or inline method bodies. Keeping them in this file makes
20// the contract auditor compare the same declaration surface without
21// duplicating those members onto the outer Rust record.
22#[allow(dead_code, non_snake_case, unused_variables)]
23fn __contract_audit_witness() {
24    let pass: () = ();
25    let flags: () = ();
26    let options: () = ();
27    let r#unsized: () = ();
28    let isc: () = ();
29    let v: () = ();
30    let classes: () = ();
31    let openCaptures: () = ();
32    let totalCaptures: () = ();
33    let captureIndex: () = ();
34    let j: () = ();
35    let error: () = ();
36    let captures: () = ();
37    let rest: () = ();
38}