Croissant Runtime
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
crsn/csn_asm/src/instr/mod.rs

28 lines
434 B

mod op;
mod cond;
mod flatten;
pub use flatten::Flatten;
pub use flatten::lower;
pub use op::HLOp;
pub use op::Op;
pub use cond::Cond;
use crate::data::literal::{RoutineName};
/// A higher-level instruction
#[derive(Debug, Clone, Eq, PartialEq)]
pub struct Instr {
pub op: HLOp,
pub branches: Option<Vec<(Cond, Vec<Instr>)>>,
}
/// A routine
pub struct Routine {
pub name: RoutineName,
pub body: Vec<Instr>,
}