aboutsummaryrefslogtreecommitdiffstats
path: root/bytecode/src/encoding.rs
diff options
context:
space:
mode:
authorRose Hogenson <rhogenson@posteo.net>2022-08-27 19:30:16 -0700
committerRose Hogenson <rhogenson@posteo.net>2022-08-27 19:30:16 -0700
commit59ca512ec8f099a7d4c8aa4392f939d1aa5aee5d (patch)
tree870b95b19f19c035df62171fdcbaa1ae041e76ae /bytecode/src/encoding.rs
parent55a9ceb549911e598be213bdb755272e0f9c4a5c (diff)
downloadchromatopelma-59ca512ec8f099a7d4c8aa4392f939d1aa5aee5d.tar.zst
Implement multiple return values.
Diffstat (limited to 'bytecode/src/encoding.rs')
-rw-r--r--bytecode/src/encoding.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/bytecode/src/encoding.rs b/bytecode/src/encoding.rs
index 44fff51..a4e159f 100644
--- a/bytecode/src/encoding.rs
+++ b/bytecode/src/encoding.rs
@@ -119,8 +119,9 @@ fn op_decoding<T: Read>(prog: &mut T) -> Result<Option<Op>, String> {
read_arg(prog, arg2_const)?,
),
19 => Op::Len(read_local(prog)?, read_arg(prog, arg1_const)?),
+ 20 => Op::AssertSingleton(read_local(prog)?, read_arg(prog, arg1_const)?),
_ => {
- return Err(String::from("invalid opcode"));
+ return Err(format!("invalid opcode {tag}"));
}
};
Ok(Some(op))