use crate::{
vm::{opcode::Operation, CompletionType},
Context, JsResult,
};
#[derive(Debug, Clone, Copy)]
pub(crate) struct Nop;
impl Operation for Nop {
const NAME: &'static str = "Nop";
const INSTRUCTION: &'static str = "INST - Nop";
fn execute(_: &mut Context<'_>) -> JsResult<CompletionType> {
Ok(CompletionType::Normal)
}
}
#[derive(Debug, Clone, Copy)]
pub(crate) struct Reserved;
impl Operation for Reserved {
const NAME: &'static str = "Reserved";
const INSTRUCTION: &'static str = "INST - Reserved";
fn execute(_: &mut Context<'_>) -> JsResult<CompletionType> {
unreachable!("Reserved opcodes are unreachable!")
}
}