luaur_analysis/functions/is_toposortable_node.rs
1use crate::functions::is_function::is_function;
2use luaur_ast::records::ast_stat::AstStat;
3use luaur_ast::records::ast_stat_type_alias::AstStatTypeAlias;
4use luaur_ast::rtti::ast_node_is;
5
6pub fn is_toposortable_node(stat: &AstStat) -> bool {
7 is_function(stat)
8 || ast_node_is::<AstStatTypeAlias>(unsafe {
9 &*(stat as *const AstStat as *mut AstStat as *mut luaur_ast::records::ast_node::AstNode)
10 })
11}