Q72QDMNZQQTDFGS4LIK6PJNAL4ZW2WR3LQP7H5JPPDDAC2OYOMUAC
/// (Shape B) Create a list object, and set the SRL register at (A) to that object (for self-reference)
PushSelfReferentialList,
/// (Shape B) Create a list object, and set the SRL register at (A != 0) to that object (for self-reference)
///
/// It will simply create an empty list object if A == 0 (without setting an SRL register)
PushList,
const ARGUMENT_MASK: u32 = 0x00ff_ffff;
pub const ARGUMENT_MASK: u32 = 0x00ff_ffff;
pub fn a(self) -> u32 {
match self {
Self::A(a) => a & Self::ARGUMENT_MASK,
Self::B(a, b) => (a as u32) << 16 | b as u32,
Self::C(a, b, c) => (a as u32) << 16 | (b as u32) << 8 | c as u32,
}
}