diff options
| author | Rose Hogenson <rhogenson@posteo.net> | 2022-08-22 20:07:06 -0700 |
|---|---|---|
| committer | Rose Hogenson <rhogenson@posteo.net> | 2022-08-22 20:07:06 -0700 |
| commit | dc8a480c65fabf35b99398120aeccca8f2874c6d (patch) | |
| tree | 5137f282745f622fc69c799c4e95d694c47c0095 /bytecode/src/encoding.rs | |
| parent | fc565d78596a44f6e6253932d726c830e3f6e509 (diff) | |
| download | chromatopelma-dc8a480c65fabf35b99398120aeccca8f2874c6d.tar.zst | |
Add a few primitive list operations.
Diffstat (limited to 'bytecode/src/encoding.rs')
| -rw-r--r-- | bytecode/src/encoding.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bytecode/src/encoding.rs b/bytecode/src/encoding.rs index 8fccc1a..44fff51 100644 --- a/bytecode/src/encoding.rs +++ b/bytecode/src/encoding.rs @@ -113,6 +113,12 @@ fn op_decoding<T: Read>(prog: &mut T) -> Result<Option<Op>, String> { read_arg(prog, arg1_const)?, read_arg(prog, arg2_const)?, ), + 18 => Op::Cons( + read_local(prog)?, + read_arg(prog, arg1_const)?, + read_arg(prog, arg2_const)?, + ), + 19 => Op::Len(read_local(prog)?, read_arg(prog, arg1_const)?), _ => { return Err(String::from("invalid opcode")); } |
