15.2.2
change mlwlwsxsxnwwqnwqzknnqwsszntnprrr
commit 1df94560e8671a9caab3f1077f10f4aae0d985aa
author Alpha Chen <alpha@kejadlen.dev>
date
parent upstmyko
diff --git a/rust/src/vm.rs b/rust/src/vm.rs
index db7c172..e26bb5f 100644
--- a/rust/src/vm.rs
+++ b/rust/src/vm.rs
@@ -34,14 +34,18 @@ impl VM {
 
     pub fn interpret(&mut self) -> Result<()> {
         loop {
-            let op_code = &self.chunk.code[self.ip];
+            debug!("{:?}", &self.stack[0..self.stack_top]);
             debug!("{}", DisassembledInstruction::new(self.ip, &self.chunk,));
-            match op_code {
+
+            match &self.chunk.code[self.ip] {
                 OpCode::Constant(constant) => {
                     let value = self.chunk.constants[*constant];
-                    println!("{}", value);
+                    self.push(value);
+                }
+                OpCode::Return => {
+                    println!("{}", self.pop());
+                    return Ok(());
                 }
-                OpCode::Return => return Ok(()),
             }
 
             self.ip += 1;