mod common; use std::env; use std::fs::File; use std::io::{self, BufRead}; use common::Circuit; fn main() -> io::Result<()> { let path = env::args().nth(1).unwrap(); let file = io::BufReader::new(File::open(path)?); let instructions = file.lines().map(|l| l.unwrap()).collect::>(); let mut circuit = Circuit::default(); for tokens in &instructions { circuit.add_instruction(tokens); } circuit.execute(); let output = circuit.variable("a").copied().unwrap(); circuit = Circuit::default(); for tokens in &instructions { circuit.add_instruction(tokens); } circuit.variable_override("b", output); circuit.execute(); let output = circuit.variable("a").unwrap(); println!("{}", output); Ok(()) }