Skip to main content

luaur_analysis/methods/
lint_table_operations_is_constant.rs

1use crate::records::lint_table_operations::LintTableOperations;
2use luaur_ast::records::ast_expr::AstExpr;
3use luaur_ast::records::ast_expr_constant_number::AstExprConstantNumber;
4use luaur_ast::rtti::ast_node_as;
5
6impl LintTableOperations {
7    pub fn is_constant(&mut self, expr: *mut AstExpr, value: f64) -> bool {
8        let n = unsafe { ast_node_as::<AstExprConstantNumber>(expr as *mut _) };
9        if !n.is_null() {
10            unsafe { (*n).value == value }
11        } else {
12            false
13        }
14    }
15}