summaryrefslogtreecommitdiffstats
path: root/src/forth/vm.rs
diff options
context:
space:
mode:
authorBrian Cully <bjc@spork.org>2025-08-25 08:25:29 -0400
committerBrian Cully <bjc@spork.org>2025-08-25 08:25:29 -0400
commitee78cb6f7f8243217098bd420ea1482d5db254f2 (patch)
tree2575519e7545075b4c71531676151e5c6c93e964 /src/forth/vm.rs
parent8879df0983737b42eee1df26004b861599dd88d6 (diff)
downloadautomathon-ee78cb6f7f8243217098bd420ea1482d5db254f2.tar.gz
automathon-ee78cb6f7f8243217098bd420ea1482d5db254f2.zip
use ‘DataStackType’ instead of hard-coding i32
i want to try isize
Diffstat (limited to 'src/forth/vm.rs')
-rw-r--r--src/forth/vm.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/forth/vm.rs b/src/forth/vm.rs
index fe034a6..8cec0d2 100644
--- a/src/forth/vm.rs
+++ b/src/forth/vm.rs
@@ -2,9 +2,11 @@ use log::debug;
use std::ops::Index;
+pub type DataStackType = i32;
+
#[derive(Clone, Debug, Eq, PartialEq)]
pub enum OpCode {
- Num(i32),
+ Num(DataStackType),
Str(usize, usize),
Call(usize),
TCall(usize), // tail call, really just ‘jmp’, but named to indicate desired usage.
@@ -85,7 +87,7 @@ impl Default for InstructionPointer {
}
#[derive(Debug)]
-pub struct DataStack(pub Vec<i32>);
+pub struct DataStack(pub Vec<DataStackType>);
#[derive(Debug)]
pub struct CallStack(pub Vec<InstructionPointer>);