luaur_analysis/records/
cfg_builder.rs1use crate::records::block::Block;
2use crate::records::cfg_allocator::CfgAllocator;
3use crate::records::control_flow_graph::ControlFlowGraph;
4use crate::records::join::Join;
5use crate::records::symbol::Symbol;
6use crate::type_aliases::def_id_control_flow_graph::DefId;
7use alloc::collections::BTreeSet;
8use luaur_common::records::dense_hash_map::DenseHashMap;
9use luaur_common::records::dense_hash_set::DenseHashSet;
10
11#[derive(Debug, Clone)]
12pub struct CfgBuilder {
13 pub cfg: Option<ControlFlowGraph>,
14 pub allocator: *mut CfgAllocator,
15 pub current_block: *mut Block,
16 pub sealed_blocks: DenseHashSet<*mut Block>,
17 pub incomplete_joins: DenseHashMap<*mut Block, BTreeSet<*mut Join>>,
18 pub version_counter: DenseHashMap<Symbol, usize>,
19}