Skip to main content

luaur_analysis/methods/
data_flow_graph_builder_empty.rs

1use crate::records::data_flow_graph::DataFlowGraph;
2use crate::records::data_flow_graph_builder::DataFlowGraphBuilder;
3use crate::records::def::Def;
4use crate::records::def_arena::DefArena;
5use crate::records::refinement_key_arena::RefinementKeyArena;
6use luaur_ast::records::ast_expr::AstExpr;
7use luaur_ast::records::ast_local::AstLocal;
8use luaur_ast::records::ast_stat::AstStat;
9use luaur_common::records::dense_hash_map::DenseHashMap;
10
11impl DataFlowGraphBuilder {
12    pub fn empty(def_arena: *mut DefArena, key_arena: *mut RefinementKeyArena) -> DataFlowGraph {
13        DataFlowGraph {
14            def_arena,
15            key_arena,
16            ast_defs: DenseHashMap::new(core::ptr::null::<AstExpr>()),
17            local_defs: DenseHashMap::new(core::ptr::null::<AstLocal>()),
18            declared_defs: DenseHashMap::new(core::ptr::null::<AstStat>()),
19            def_to_symbol: DenseHashMap::new(core::ptr::null::<Def>()),
20            ast_refinement_keys: DenseHashMap::new(core::ptr::null::<AstExpr>()),
21        }
22    }
23}