n3tael d6e290f916
обновление 1.0.5
* стек теперь не бесконечный. задать можно через аргумент cli (максимум 65535, дефолт: 256)
2024-02-07 23:38:04 +02:00

18 lines
511 B
Rust

use crate::{errors::RunError, stack::{Stack, StackVec}};
pub fn args(memory: &mut StackVec, origin_stack: &mut Option<&mut Stack>, data: u16) {
if let Some(origin_stack) = origin_stack.as_mut() {
let mut data = data;
if data == 0 {
data = origin_stack.memory.pop();
}
for _ in 0..data {
memory.push(origin_stack.memory.pop());
}
} else {
eprintln!("{}", RunError::RequestArgsInMainModule);
std::process::exit(2);
}
}