pub struct ShiftRight;Expand description
Shift right for unsigned 128-bit integers.
§Behavior
BEFORE: _ [arg: u128] shift_amount
AFTER: _ [result: u128]§Preconditions
- input argument
argis properlyBFieldCodecencoded - input argument
shift_amountis in0..128
§Postconditions
- the output is the input argument
argbit-shifted to the right by input argumentshift_amount - the output is properly
BFieldCodecencoded
Implementations§
Source§impl ShiftRight
impl ShiftRight
pub const SHIFT_AMOUNT_TOO_BIG_ERROR_ID: i128 = 540
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, _: &mut Library) -> Vec<LabelledInstruction>
fn code(&self, _: &mut Library) -> Vec<LabelledInstruction>
The Triton Assembly that defines this snippet. Read more
Source§fn sign_offs(&self) -> HashMap<Reviewer, SignOffFingerprint>
fn sign_offs(&self) -> HashMap<Reviewer, SignOffFingerprint>
Contains an entry for every sign off. 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 Default for ShiftRight
impl Default for ShiftRight
Source§fn default() -> ShiftRight
fn default() -> ShiftRight
Returns the “default value” for a type. Read more
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.