Skip to main content

luaur_bytecode/records/
block_producers.rs

1use crate::records::bc_op::BcOp;
2use crate::type_aliases::reg::Reg;
3use std::collections::HashMap;
4
5#[derive(Debug, Clone, PartialEq, Eq)]
6pub struct BlockProducers {
7    pub(crate) own: HashMap<Reg, BcOp>,
8    pub(crate) cached: HashMap<Reg, BcOp>,
9    pub(crate) multiReturn: BcOp,
10    pub(crate) multiReturnStart: Reg,
11    pub(crate) invalidAfter: i32,
12}
13
14impl Default for BlockProducers {
15    fn default() -> Self {
16        Self {
17            own: HashMap::default(),
18            cached: HashMap::default(),
19            multiReturn: unsafe { std::mem::zeroed() },
20            multiReturnStart: 0,
21            invalidAfter: 255,
22        }
23    }
24}