Struct gear_core::costs::SyscallCosts
source · pub struct SyscallCosts {Show 70 fields
pub alloc: CostOf<CallsAmount>,
pub free: CostOf<CallsAmount>,
pub free_range: CostOf<CallsAmount>,
pub free_range_per_page: CostOf<WasmPagesAmount>,
pub gr_reserve_gas: CostOf<CallsAmount>,
pub gr_unreserve_gas: CostOf<CallsAmount>,
pub gr_system_reserve_gas: CostOf<CallsAmount>,
pub gr_gas_available: CostOf<CallsAmount>,
pub gr_message_id: CostOf<CallsAmount>,
pub gr_program_id: CostOf<CallsAmount>,
pub gr_source: CostOf<CallsAmount>,
pub gr_value: CostOf<CallsAmount>,
pub gr_value_available: CostOf<CallsAmount>,
pub gr_size: CostOf<CallsAmount>,
pub gr_read: CostOf<CallsAmount>,
pub gr_read_per_byte: CostOf<BytesAmount>,
pub gr_env_vars: CostOf<CallsAmount>,
pub gr_block_height: CostOf<CallsAmount>,
pub gr_block_timestamp: CostOf<CallsAmount>,
pub gr_random: CostOf<CallsAmount>,
pub gr_reply_deposit: CostOf<CallsAmount>,
pub gr_send: CostOf<CallsAmount>,
pub gr_send_per_byte: CostOf<BytesAmount>,
pub gr_send_wgas: CostOf<CallsAmount>,
pub gr_send_wgas_per_byte: CostOf<BytesAmount>,
pub gr_send_init: CostOf<CallsAmount>,
pub gr_send_push: CostOf<CallsAmount>,
pub gr_send_push_per_byte: CostOf<BytesAmount>,
pub gr_send_commit: CostOf<CallsAmount>,
pub gr_send_commit_wgas: CostOf<CallsAmount>,
pub gr_reservation_send: CostOf<CallsAmount>,
pub gr_reservation_send_per_byte: CostOf<BytesAmount>,
pub gr_reservation_send_commit: CostOf<CallsAmount>,
pub gr_send_input: CostOf<CallsAmount>,
pub gr_send_input_wgas: CostOf<CallsAmount>,
pub gr_send_push_input: CostOf<CallsAmount>,
pub gr_send_push_input_per_byte: CostOf<BytesAmount>,
pub gr_reply: CostOf<CallsAmount>,
pub gr_reply_per_byte: CostOf<BytesAmount>,
pub gr_reply_wgas: CostOf<CallsAmount>,
pub gr_reply_wgas_per_byte: CostOf<BytesAmount>,
pub gr_reply_commit: CostOf<CallsAmount>,
pub gr_reply_commit_wgas: CostOf<CallsAmount>,
pub gr_reservation_reply: CostOf<CallsAmount>,
pub gr_reservation_reply_per_byte: CostOf<BytesAmount>,
pub gr_reservation_reply_commit: CostOf<CallsAmount>,
pub gr_reply_push: CostOf<CallsAmount>,
pub gr_reply_push_per_byte: CostOf<BytesAmount>,
pub gr_reply_input: CostOf<CallsAmount>,
pub gr_reply_input_wgas: CostOf<CallsAmount>,
pub gr_reply_push_input: CostOf<CallsAmount>,
pub gr_reply_push_input_per_byte: CostOf<BytesAmount>,
pub gr_reply_to: CostOf<CallsAmount>,
pub gr_signal_code: CostOf<CallsAmount>,
pub gr_signal_from: CostOf<CallsAmount>,
pub gr_debug: CostOf<CallsAmount>,
pub gr_debug_per_byte: CostOf<BytesAmount>,
pub gr_reply_code: CostOf<CallsAmount>,
pub gr_exit: CostOf<CallsAmount>,
pub gr_leave: CostOf<CallsAmount>,
pub gr_wait: CostOf<CallsAmount>,
pub gr_wait_for: CostOf<CallsAmount>,
pub gr_wait_up_to: CostOf<CallsAmount>,
pub gr_wake: CostOf<CallsAmount>,
pub gr_create_program: CostOf<CallsAmount>,
pub gr_create_program_payload_per_byte: CostOf<BytesAmount>,
pub gr_create_program_salt_per_byte: CostOf<BytesAmount>,
pub gr_create_program_wgas: CostOf<CallsAmount>,
pub gr_create_program_wgas_payload_per_byte: CostOf<BytesAmount>,
pub gr_create_program_wgas_salt_per_byte: CostOf<BytesAmount>,
}
Expand description
Program imported function call (syscall) costs.
Fields§
§alloc: CostOf<CallsAmount>
Cost of calling alloc
.
free: CostOf<CallsAmount>
Cost of calling free
.
free_range: CostOf<CallsAmount>
Cost of calling free_range
free_range_per_page: CostOf<WasmPagesAmount>
Cost of calling free_range
per page
gr_reserve_gas: CostOf<CallsAmount>
Cost of calling gr_reserve_gas
.
gr_unreserve_gas: CostOf<CallsAmount>
Cost of calling gr_unreserve_gas
gr_system_reserve_gas: CostOf<CallsAmount>
Cost of calling gr_system_reserve_gas
gr_gas_available: CostOf<CallsAmount>
Cost of calling gr_gas_available
.
gr_message_id: CostOf<CallsAmount>
Cost of calling gr_message_id
.
gr_program_id: CostOf<CallsAmount>
Cost of calling gr_program_id
.
gr_source: CostOf<CallsAmount>
Cost of calling gr_source
.
gr_value: CostOf<CallsAmount>
Cost of calling gr_value
.
gr_value_available: CostOf<CallsAmount>
Cost of calling gr_value_available
.
gr_size: CostOf<CallsAmount>
Cost of calling gr_size
.
gr_read: CostOf<CallsAmount>
Cost of calling gr_read
.
gr_read_per_byte: CostOf<BytesAmount>
Cost per payload byte for gr_read
.
gr_env_vars: CostOf<CallsAmount>
Cost of calling gr_env_vars
.
gr_block_height: CostOf<CallsAmount>
Cost of calling gr_block_height
.
gr_block_timestamp: CostOf<CallsAmount>
Cost of calling gr_block_timestamp
.
gr_random: CostOf<CallsAmount>
Cost of calling gr_random
.
gr_reply_deposit: CostOf<CallsAmount>
Cost of calling gr_reply_deposit
.
gr_send: CostOf<CallsAmount>
Cost of calling gr_send
gr_send_per_byte: CostOf<BytesAmount>
Cost per bytes for gr_send
.
gr_send_wgas: CostOf<CallsAmount>
Cost of calling gr_send_wgas
.
gr_send_wgas_per_byte: CostOf<BytesAmount>
Cost of calling gr_send_wgas
per one payload byte.
gr_send_init: CostOf<CallsAmount>
Cost of calling gr_send_init
.
gr_send_push: CostOf<CallsAmount>
Cost of calling gr_send_push
.
gr_send_push_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_send_push
.
gr_send_commit: CostOf<CallsAmount>
Cost of calling gr_send_commit
.
gr_send_commit_wgas: CostOf<CallsAmount>
Cost of calling gr_send_commit_wgas
.
gr_reservation_send: CostOf<CallsAmount>
Cost of calling gr_reservation_send
.
gr_reservation_send_per_byte: CostOf<BytesAmount>
Cost of calling gr_reservation_send
per one payload byte.
gr_reservation_send_commit: CostOf<CallsAmount>
Cost of calling gr_reservation_send_commit
.
gr_send_input: CostOf<CallsAmount>
Cost of calling gr_send_init
.
gr_send_input_wgas: CostOf<CallsAmount>
Cost of calling gr_send_init_wgas
.
gr_send_push_input: CostOf<CallsAmount>
Cost of calling gr_send_push_input
.
gr_send_push_input_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_send_push_input
.
gr_reply: CostOf<CallsAmount>
Cost of calling gr_reply
.
gr_reply_per_byte: CostOf<BytesAmount>
Cost of calling gr_reply
per one payload byte.
gr_reply_wgas: CostOf<CallsAmount>
Cost of calling gr_reply_wgas
.
gr_reply_wgas_per_byte: CostOf<BytesAmount>
Cost of calling gr_reply_wgas
per one payload byte.
gr_reply_commit: CostOf<CallsAmount>
Cost of calling gr_reply_commit
.
gr_reply_commit_wgas: CostOf<CallsAmount>
Cost of calling gr_reply_commit_wgas
.
gr_reservation_reply: CostOf<CallsAmount>
Cost of calling gr_reservation_reply
.
gr_reservation_reply_per_byte: CostOf<BytesAmount>
Cost of calling gr_reservation_reply
per one payload byte.
gr_reservation_reply_commit: CostOf<CallsAmount>
Cost of calling gr_reservation_reply_commit
.
gr_reply_push: CostOf<CallsAmount>
Cost of calling gr_reply_push
.
gr_reply_push_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_reply_push
.
gr_reply_input: CostOf<CallsAmount>
Cost of calling gr_reply_input
.
gr_reply_input_wgas: CostOf<CallsAmount>
Cost of calling gr_reply_input_wgas
.
gr_reply_push_input: CostOf<CallsAmount>
Cost of calling gr_reply_push_input
.
gr_reply_push_input_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_reply_push_input
.
gr_reply_to: CostOf<CallsAmount>
Cost of calling gr_reply_to
.
gr_signal_code: CostOf<CallsAmount>
Cost of calling gr_signal_code
.
gr_signal_from: CostOf<CallsAmount>
Cost of calling gr_signal_from
.
gr_debug: CostOf<CallsAmount>
Cost of calling gr_debug
.
gr_debug_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_debug
.
gr_reply_code: CostOf<CallsAmount>
Cost of calling gr_reply_code
.
gr_exit: CostOf<CallsAmount>
Cost of calling gr_exit
.
gr_leave: CostOf<CallsAmount>
Cost of calling gr_leave
.
gr_wait: CostOf<CallsAmount>
Cost of calling gr_wait
.
gr_wait_for: CostOf<CallsAmount>
Cost of calling gr_wait_for
.
gr_wait_up_to: CostOf<CallsAmount>
Cost of calling gr_wait_up_to
.
gr_wake: CostOf<CallsAmount>
Cost of calling gr_wake
.
gr_create_program: CostOf<CallsAmount>
Cost of calling gr_create_program_wgas
.
gr_create_program_payload_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_create_program_wgas
.
gr_create_program_salt_per_byte: CostOf<BytesAmount>
Cost per salt byte by gr_create_program_wgas
.
gr_create_program_wgas: CostOf<CallsAmount>
Cost of calling gr_create_program_wgas
.
gr_create_program_wgas_payload_per_byte: CostOf<BytesAmount>
Cost per payload byte by gr_create_program_wgas
.
gr_create_program_wgas_salt_per_byte: CostOf<BytesAmount>
Cost per salt byte by gr_create_program_wgas
.
Implementations§
source§impl SyscallCosts
impl SyscallCosts
sourcepub fn cost_for_token(&self, token: CostToken) -> u64
pub fn cost_for_token(&self, token: CostToken) -> u64
Get cost for a token.
Trait Implementations§
source§impl Clone for SyscallCosts
impl Clone for SyscallCosts
source§fn clone(&self) -> SyscallCosts
fn clone(&self) -> SyscallCosts
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for SyscallCosts
impl Debug for SyscallCosts
source§impl Default for SyscallCosts
impl Default for SyscallCosts
source§fn default() -> SyscallCosts
fn default() -> SyscallCosts
source§impl From<SyscallWeights> for SyscallCosts
impl From<SyscallWeights> for SyscallCosts
source§fn from(val: SyscallWeights) -> Self
fn from(val: SyscallWeights) -> Self
source§impl PartialEq for SyscallCosts
impl PartialEq for SyscallCosts
impl Eq for SyscallCosts
impl StructuralPartialEq for SyscallCosts
Auto Trait Implementations§
impl Freeze for SyscallCosts
impl RefUnwindSafe for SyscallCosts
impl Send for SyscallCosts
impl Sync for SyscallCosts
impl Unpin for SyscallCosts
impl UnwindSafe for SyscallCosts
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.