1 个稳定版本
1.0.0 | 2024年1月20日 |
---|
#8 在 #zero-dependency
用于 rainfuck-cli
16KB
218 行
Rainfuck
一个可配置、最小化、强大的Brainfuck解释器库!Rainfuck除非你指定了一个需要依赖的特征,否则不使用任何依赖!
示例
use rainfuck::BrainfuckVM;
// A simple cat program. (Just repeats what you type.)
fn main() {
let mut vm = BrainfuckVM::new();
vm.prompt_display = String::from("[TYPE]: ");
vm.process(",[.,]");
}
use rainfuck::BrainfuckVM;
// Run some stuff, then reset the virtual machine.
fn main() {
let mut vm = BrainfuckVM::new();
assert!(vm == BrainfuckVM::new());
vm.process("++++++++[>+>+<<-]>>[<<+>>-]");
assert!(vm.cells[0..4] == [8, 8, 0, 0]);
vm.reset();
assert!(vm == BrainfuckVM::new());
}
lib.rs
:
Rainfuck
一个可配置、最小化、强大的Brainfuck解释器库!Rainfuck除非你指定了一个需要依赖的特征,否则不使用任何依赖!
示例
use rainfuck::BrainfuckVM;
// A simple cat program. (Just repeats what you type.)
fn main() {
let mut vm = BrainfuckVM::new();
vm.prompt_display = String::from("[TYPE]: ");
vm.process(",[.,]");
}
use rainfuck::BrainfuckVM;
// Run some stuff, then reset the virtual machine.
fn main() {
let mut vm = BrainfuckVM::new();
assert!(vm == BrainfuckVM::new());
vm.process("++++++++[>+>+<<-]>>[<<+>>-]");
assert!(vm.cells[0..4] == [8, 8, 0, 0]);
vm.reset();
assert!(vm == BrainfuckVM::new());
}
依赖项
~205KB