use asm::instr::Op; use asm::data::literal::Addr; #[derive(Clone, Debug)] pub struct Program { ops: Vec, } impl Program { pub fn new(ops : Vec) -> Self { Self { ops, } } pub fn read(&self, addr: Addr) -> &Op { if addr.0 >= self.ops.len() as u64 { &Op::Nop } else { &self.ops[addr.0 as usize] } } }