deskc_amir/
block.rs

1use types::Type;
2
3use crate::stmt::{AStmt, ATerminator, StmtBind};
4
5#[cfg_attr(feature = "withserde", derive(serde::Serialize, serde::Deserialize))]
6#[derive(Clone, Debug, PartialEq)]
7pub struct ABasicBlock<S = AStmt, T = Type> {
8    pub stmts: Vec<StmtBind<S>>,
9    pub terminator: ATerminator<T>,
10}
11
12#[cfg_attr(feature = "withserde", derive(serde::Serialize, serde::Deserialize))]
13#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Default)]
14pub struct BlockId(pub usize);