pub struct ShiftRight;Expand description
Right-shift for 128-bit integers AKA right-shift for i128.
§Behavior
BEFORE: _ arg3 arg2 arg1 arg0 shamt
AFTER: _ res3 res2 res1 res0where res == arg >> shamt as i128s.
§Preconditions
argconsists of 4u32sshamtis in[0:128)
§Postconditions
resconsists of 4u32s
§Panics
- If preconditions are not met.
Implementations§
Source§impl ShiftRight
impl ShiftRight
pub const ARGUMENT_LIMB_3_NOT_U32_ERROR_ID: i128 = 323
pub const ARGUMENT_LIMB_2_NOT_U32_ERROR_ID: i128 = 322
pub const ARGUMENT_LIMB_1_NOT_U32_ERROR_ID: i128 = 321
pub const ARGUMENT_LIMB_0_NOT_U32_ERROR_ID: i128 = 320
pub const SHAMT_NOT_U32_ERROR_ID: i128 = 324
Trait Implementations§
Source§impl BasicSnippet for ShiftRight
impl BasicSnippet for ShiftRight
Source§fn parameters(&self) -> Vec<(DataType, String)>
fn parameters(&self) -> Vec<(DataType, String)>
The parameters expected by this snippet. Read more
Source§fn return_values(&self) -> Vec<(DataType, String)>
fn return_values(&self) -> Vec<(DataType, String)>
The (types of the) values this snippet computes. Read more
Source§fn entrypoint(&self) -> String
fn entrypoint(&self) -> String
The name of the snippet as a possible target for Triton VM’s
instruction
call.Source§fn code(&self, library: &mut Library) -> Vec<LabelledInstruction>
fn code(&self, library: &mut Library) -> Vec<LabelledInstruction>
The Triton Assembly that defines this snippet. Read more
Source§fn annotated_code(&self, library: &mut Library) -> Vec<LabelledInstruction>
fn annotated_code(&self, library: &mut Library) -> Vec<LabelledInstruction>
Source§fn stack_diff(&self) -> isize
fn stack_diff(&self) -> isize
The size difference of the stack as a result of executing this snippet.
Source§impl Clone for ShiftRight
impl Clone for ShiftRight
Source§fn clone(&self) -> ShiftRight
fn clone(&self) -> ShiftRight
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ShiftRight
impl Debug for ShiftRight
Source§impl Hash for ShiftRight
impl Hash for ShiftRight
Source§impl PartialEq for ShiftRight
impl PartialEq for ShiftRight
impl Copy for ShiftRight
impl Eq for ShiftRight
impl StructuralPartialEq for ShiftRight
Auto Trait Implementations§
impl Freeze for ShiftRight
impl RefUnwindSafe for ShiftRight
impl Send for ShiftRight
impl Sync for ShiftRight
impl Unpin for ShiftRight
impl UnwindSafe for ShiftRight
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SignedOffSnippet for Twhere
T: BasicSnippet + ?Sized,
impl<T> SignedOffSnippet for Twhere
T: BasicSnippet + ?Sized,
Source§fn fingerprint(&self) -> SignOffFingerprint
fn fingerprint(&self) -> SignOffFingerprint
The unique fingerprint as used for signing off on
this snippet.
Source§fn assert_all_sign_offs_are_up_to_date(&self)
fn assert_all_sign_offs_are_up_to_date(&self)
Panics if any sign-offs disagree with the actual
fingerprint.