pub enum CoreFunction {
Show 254 variants
BHP256CommitToAddress,
BHP256CommitToField,
BHP256CommitToGroup,
BHP256HashToAddress,
BHP256HashToField,
BHP256HashToGroup,
BHP256HashToI8,
BHP256HashToI16,
BHP256HashToI32,
BHP256HashToI64,
BHP256HashToI128,
BHP256HashToU8,
BHP256HashToU16,
BHP256HashToU32,
BHP256HashToU64,
BHP256HashToU128,
BHP256HashToScalar,
BHP512CommitToAddress,
BHP512CommitToField,
BHP512CommitToGroup,
BHP512HashToAddress,
BHP512HashToField,
BHP512HashToGroup,
BHP512HashToI8,
BHP512HashToI16,
BHP512HashToI32,
BHP512HashToI64,
BHP512HashToI128,
BHP512HashToU8,
BHP512HashToU16,
BHP512HashToU32,
BHP512HashToU64,
BHP512HashToU128,
BHP512HashToScalar,
BHP768CommitToAddress,
BHP768CommitToField,
BHP768CommitToGroup,
BHP768HashToAddress,
BHP768HashToField,
BHP768HashToGroup,
BHP768HashToI8,
BHP768HashToI16,
BHP768HashToI32,
BHP768HashToI64,
BHP768HashToI128,
BHP768HashToU8,
BHP768HashToU16,
BHP768HashToU32,
BHP768HashToU64,
BHP768HashToU128,
BHP768HashToScalar,
BHP1024CommitToAddress,
BHP1024CommitToField,
BHP1024CommitToGroup,
BHP1024HashToAddress,
BHP1024HashToField,
BHP1024HashToGroup,
BHP1024HashToI8,
BHP1024HashToI16,
BHP1024HashToI32,
BHP1024HashToI64,
BHP1024HashToI128,
BHP1024HashToU8,
BHP1024HashToU16,
BHP1024HashToU32,
BHP1024HashToU64,
BHP1024HashToU128,
BHP1024HashToScalar,
ChaChaRandAddress,
ChaChaRandBool,
ChaChaRandField,
ChaChaRandGroup,
ChaChaRandI8,
ChaChaRandI16,
ChaChaRandI32,
ChaChaRandI64,
ChaChaRandI128,
ChaChaRandU8,
ChaChaRandU16,
ChaChaRandU32,
ChaChaRandU64,
ChaChaRandU128,
ChaChaRandScalar,
Keccak256HashToAddress,
Keccak256HashToField,
Keccak256HashToGroup,
Keccak256HashToI8,
Keccak256HashToI16,
Keccak256HashToI32,
Keccak256HashToI64,
Keccak256HashToI128,
Keccak256HashToU8,
Keccak256HashToU16,
Keccak256HashToU32,
Keccak256HashToU64,
Keccak256HashToU128,
Keccak256HashToScalar,
Keccak384HashToAddress,
Keccak384HashToField,
Keccak384HashToGroup,
Keccak384HashToI8,
Keccak384HashToI16,
Keccak384HashToI32,
Keccak384HashToI64,
Keccak384HashToI128,
Keccak384HashToU8,
Keccak384HashToU16,
Keccak384HashToU32,
Keccak384HashToU64,
Keccak384HashToU128,
Keccak384HashToScalar,
Keccak512HashToAddress,
Keccak512HashToField,
Keccak512HashToGroup,
Keccak512HashToI8,
Keccak512HashToI16,
Keccak512HashToI32,
Keccak512HashToI64,
Keccak512HashToI128,
Keccak512HashToU8,
Keccak512HashToU16,
Keccak512HashToU32,
Keccak512HashToU64,
Keccak512HashToU128,
Keccak512HashToScalar,
Pedersen64CommitToAddress,
Pedersen64CommitToField,
Pedersen64CommitToGroup,
Pedersen64HashToAddress,
Pedersen64HashToField,
Pedersen64HashToGroup,
Pedersen64HashToI8,
Pedersen64HashToI16,
Pedersen64HashToI32,
Pedersen64HashToI64,
Pedersen64HashToI128,
Pedersen64HashToU8,
Pedersen64HashToU16,
Pedersen64HashToU32,
Pedersen64HashToU64,
Pedersen64HashToU128,
Pedersen64HashToScalar,
Pedersen128CommitToAddress,
Pedersen128CommitToField,
Pedersen128CommitToGroup,
Pedersen128HashToAddress,
Pedersen128HashToField,
Pedersen128HashToGroup,
Pedersen128HashToI8,
Pedersen128HashToI16,
Pedersen128HashToI32,
Pedersen128HashToI64,
Pedersen128HashToI128,
Pedersen128HashToU8,
Pedersen128HashToU16,
Pedersen128HashToU32,
Pedersen128HashToU64,
Pedersen128HashToU128,
Pedersen128HashToScalar,
Poseidon2HashToAddress,
Poseidon2HashToField,
Poseidon2HashToGroup,
Poseidon2HashToI8,
Poseidon2HashToI16,
Poseidon2HashToI32,
Poseidon2HashToI64,
Poseidon2HashToI128,
Poseidon2HashToU8,
Poseidon2HashToU16,
Poseidon2HashToU32,
Poseidon2HashToU64,
Poseidon2HashToU128,
Poseidon2HashToScalar,
Poseidon4HashToAddress,
Poseidon4HashToField,
Poseidon4HashToGroup,
Poseidon4HashToI8,
Poseidon4HashToI16,
Poseidon4HashToI32,
Poseidon4HashToI64,
Poseidon4HashToI128,
Poseidon4HashToU8,
Poseidon4HashToU16,
Poseidon4HashToU32,
Poseidon4HashToU64,
Poseidon4HashToU128,
Poseidon4HashToScalar,
Poseidon8HashToAddress,
Poseidon8HashToField,
Poseidon8HashToGroup,
Poseidon8HashToI8,
Poseidon8HashToI16,
Poseidon8HashToI32,
Poseidon8HashToI64,
Poseidon8HashToI128,
Poseidon8HashToU8,
Poseidon8HashToU16,
Poseidon8HashToU32,
Poseidon8HashToU64,
Poseidon8HashToU128,
Poseidon8HashToScalar,
SHA3_256HashToAddress,
SHA3_256HashToField,
SHA3_256HashToGroup,
SHA3_256HashToI8,
SHA3_256HashToI16,
SHA3_256HashToI32,
SHA3_256HashToI64,
SHA3_256HashToI128,
SHA3_256HashToU8,
SHA3_256HashToU16,
SHA3_256HashToU32,
SHA3_256HashToU64,
SHA3_256HashToU128,
SHA3_256HashToScalar,
SHA3_384HashToAddress,
SHA3_384HashToField,
SHA3_384HashToGroup,
SHA3_384HashToI8,
SHA3_384HashToI16,
SHA3_384HashToI32,
SHA3_384HashToI64,
SHA3_384HashToI128,
SHA3_384HashToU8,
SHA3_384HashToU16,
SHA3_384HashToU32,
SHA3_384HashToU64,
SHA3_384HashToU128,
SHA3_384HashToScalar,
SHA3_512HashToAddress,
SHA3_512HashToField,
SHA3_512HashToGroup,
SHA3_512HashToI8,
SHA3_512HashToI16,
SHA3_512HashToI32,
SHA3_512HashToI64,
SHA3_512HashToI128,
SHA3_512HashToU8,
SHA3_512HashToU16,
SHA3_512HashToU32,
SHA3_512HashToU64,
SHA3_512HashToU128,
SHA3_512HashToScalar,
MappingGet,
MappingGetOrUse,
MappingSet,
MappingRemove,
MappingContains,
GroupToXCoordinate,
GroupToYCoordinate,
SignatureVerify,
FutureAwait,
CheatCodePrintMapping,
CheatCodeSetBlockHeight,
}
Expand description
A core instruction that maps directly to an AVM bytecode instruction.
Variants§
BHP256CommitToAddress
BHP256CommitToField
BHP256CommitToGroup
BHP256HashToAddress
BHP256HashToField
BHP256HashToGroup
BHP256HashToI8
BHP256HashToI16
BHP256HashToI32
BHP256HashToI64
BHP256HashToI128
BHP256HashToU8
BHP256HashToU16
BHP256HashToU32
BHP256HashToU64
BHP256HashToU128
BHP256HashToScalar
BHP512CommitToAddress
BHP512CommitToField
BHP512CommitToGroup
BHP512HashToAddress
BHP512HashToField
BHP512HashToGroup
BHP512HashToI8
BHP512HashToI16
BHP512HashToI32
BHP512HashToI64
BHP512HashToI128
BHP512HashToU8
BHP512HashToU16
BHP512HashToU32
BHP512HashToU64
BHP512HashToU128
BHP512HashToScalar
BHP768CommitToAddress
BHP768CommitToField
BHP768CommitToGroup
BHP768HashToAddress
BHP768HashToField
BHP768HashToGroup
BHP768HashToI8
BHP768HashToI16
BHP768HashToI32
BHP768HashToI64
BHP768HashToI128
BHP768HashToU8
BHP768HashToU16
BHP768HashToU32
BHP768HashToU64
BHP768HashToU128
BHP768HashToScalar
BHP1024CommitToAddress
BHP1024CommitToField
BHP1024CommitToGroup
BHP1024HashToAddress
BHP1024HashToField
BHP1024HashToGroup
BHP1024HashToI8
BHP1024HashToI16
BHP1024HashToI32
BHP1024HashToI64
BHP1024HashToI128
BHP1024HashToU8
BHP1024HashToU16
BHP1024HashToU32
BHP1024HashToU64
BHP1024HashToU128
BHP1024HashToScalar
ChaChaRandAddress
ChaChaRandBool
ChaChaRandField
ChaChaRandGroup
ChaChaRandI8
ChaChaRandI16
ChaChaRandI32
ChaChaRandI64
ChaChaRandI128
ChaChaRandU8
ChaChaRandU16
ChaChaRandU32
ChaChaRandU64
ChaChaRandU128
ChaChaRandScalar
Keccak256HashToAddress
Keccak256HashToField
Keccak256HashToGroup
Keccak256HashToI8
Keccak256HashToI16
Keccak256HashToI32
Keccak256HashToI64
Keccak256HashToI128
Keccak256HashToU8
Keccak256HashToU16
Keccak256HashToU32
Keccak256HashToU64
Keccak256HashToU128
Keccak256HashToScalar
Keccak384HashToAddress
Keccak384HashToField
Keccak384HashToGroup
Keccak384HashToI8
Keccak384HashToI16
Keccak384HashToI32
Keccak384HashToI64
Keccak384HashToI128
Keccak384HashToU8
Keccak384HashToU16
Keccak384HashToU32
Keccak384HashToU64
Keccak384HashToU128
Keccak384HashToScalar
Keccak512HashToAddress
Keccak512HashToField
Keccak512HashToGroup
Keccak512HashToI8
Keccak512HashToI16
Keccak512HashToI32
Keccak512HashToI64
Keccak512HashToI128
Keccak512HashToU8
Keccak512HashToU16
Keccak512HashToU32
Keccak512HashToU64
Keccak512HashToU128
Keccak512HashToScalar
Pedersen64CommitToAddress
Pedersen64CommitToField
Pedersen64CommitToGroup
Pedersen64HashToAddress
Pedersen64HashToField
Pedersen64HashToGroup
Pedersen64HashToI8
Pedersen64HashToI16
Pedersen64HashToI32
Pedersen64HashToI64
Pedersen64HashToI128
Pedersen64HashToU8
Pedersen64HashToU16
Pedersen64HashToU32
Pedersen64HashToU64
Pedersen64HashToU128
Pedersen64HashToScalar
Pedersen128CommitToAddress
Pedersen128CommitToField
Pedersen128CommitToGroup
Pedersen128HashToAddress
Pedersen128HashToField
Pedersen128HashToGroup
Pedersen128HashToI8
Pedersen128HashToI16
Pedersen128HashToI32
Pedersen128HashToI64
Pedersen128HashToI128
Pedersen128HashToU8
Pedersen128HashToU16
Pedersen128HashToU32
Pedersen128HashToU64
Pedersen128HashToU128
Pedersen128HashToScalar
Poseidon2HashToAddress
Poseidon2HashToField
Poseidon2HashToGroup
Poseidon2HashToI8
Poseidon2HashToI16
Poseidon2HashToI32
Poseidon2HashToI64
Poseidon2HashToI128
Poseidon2HashToU8
Poseidon2HashToU16
Poseidon2HashToU32
Poseidon2HashToU64
Poseidon2HashToU128
Poseidon2HashToScalar
Poseidon4HashToAddress
Poseidon4HashToField
Poseidon4HashToGroup
Poseidon4HashToI8
Poseidon4HashToI16
Poseidon4HashToI32
Poseidon4HashToI64
Poseidon4HashToI128
Poseidon4HashToU8
Poseidon4HashToU16
Poseidon4HashToU32
Poseidon4HashToU64
Poseidon4HashToU128
Poseidon4HashToScalar
Poseidon8HashToAddress
Poseidon8HashToField
Poseidon8HashToGroup
Poseidon8HashToI8
Poseidon8HashToI16
Poseidon8HashToI32
Poseidon8HashToI64
Poseidon8HashToI128
Poseidon8HashToU8
Poseidon8HashToU16
Poseidon8HashToU32
Poseidon8HashToU64
Poseidon8HashToU128
Poseidon8HashToScalar
SHA3_256HashToAddress
SHA3_256HashToField
SHA3_256HashToGroup
SHA3_256HashToI8
SHA3_256HashToI16
SHA3_256HashToI32
SHA3_256HashToI64
SHA3_256HashToI128
SHA3_256HashToU8
SHA3_256HashToU16
SHA3_256HashToU32
SHA3_256HashToU64
SHA3_256HashToU128
SHA3_256HashToScalar
SHA3_384HashToAddress
SHA3_384HashToField
SHA3_384HashToGroup
SHA3_384HashToI8
SHA3_384HashToI16
SHA3_384HashToI32
SHA3_384HashToI64
SHA3_384HashToI128
SHA3_384HashToU8
SHA3_384HashToU16
SHA3_384HashToU32
SHA3_384HashToU64
SHA3_384HashToU128
SHA3_384HashToScalar
SHA3_512HashToAddress
SHA3_512HashToField
SHA3_512HashToGroup
SHA3_512HashToI8
SHA3_512HashToI16
SHA3_512HashToI32
SHA3_512HashToI64
SHA3_512HashToI128
SHA3_512HashToU8
SHA3_512HashToU16
SHA3_512HashToU32
SHA3_512HashToU64
SHA3_512HashToU128
SHA3_512HashToScalar
MappingGet
MappingGetOrUse
MappingSet
MappingRemove
MappingContains
GroupToXCoordinate
GroupToYCoordinate
SignatureVerify
FutureAwait
CheatCodePrintMapping
CheatCodeSetBlockHeight
Implementations§
Source§impl CoreFunction
impl CoreFunction
Sourcepub fn from_symbols(module: Symbol, function: Symbol) -> Option<Self>
pub fn from_symbols(module: Symbol, function: Symbol) -> Option<Self>
Returns a CoreFunction
from the given module and method symbols.
Sourcepub fn is_finalize_command(&self) -> bool
pub fn is_finalize_command(&self) -> bool
Returns whether or not this function is finalize command.
Trait Implementations§
Source§impl Clone for CoreFunction
impl Clone for CoreFunction
Source§fn clone(&self) -> CoreFunction
fn clone(&self) -> CoreFunction
Returns a copy 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 CoreFunction
impl Debug for CoreFunction
Source§impl PartialEq for CoreFunction
impl PartialEq for CoreFunction
impl Eq for CoreFunction
impl StructuralPartialEq for CoreFunction
Auto Trait Implementations§
impl Freeze for CoreFunction
impl RefUnwindSafe for CoreFunction
impl Send for CoreFunction
impl Sync for CoreFunction
impl Unpin for CoreFunction
impl UnwindSafe for CoreFunction
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more