pub struct HostFunctionCosts {Show 42 fields
pub read_value: HostFunction<[Cost; 3]>,
pub dictionary_get: HostFunction<[Cost; 3]>,
pub write: HostFunction<[Cost; 4]>,
pub dictionary_put: HostFunction<[Cost; 4]>,
pub add: HostFunction<[Cost; 4]>,
pub new_uref: HostFunction<[Cost; 3]>,
pub load_named_keys: HostFunction<[Cost; 2]>,
pub ret: HostFunction<[Cost; 2]>,
pub get_key: HostFunction<[Cost; 5]>,
pub has_key: HostFunction<[Cost; 2]>,
pub put_key: HostFunction<[Cost; 4]>,
pub remove_key: HostFunction<[Cost; 2]>,
pub revert: HostFunction<[Cost; 1]>,
pub is_valid_uref: HostFunction<[Cost; 2]>,
pub add_associated_key: HostFunction<[Cost; 3]>,
pub remove_associated_key: HostFunction<[Cost; 2]>,
pub update_associated_key: HostFunction<[Cost; 3]>,
pub set_action_threshold: HostFunction<[Cost; 2]>,
pub get_caller: HostFunction<[Cost; 1]>,
pub get_blocktime: HostFunction<[Cost; 1]>,
pub create_purse: HostFunction<[Cost; 2]>,
pub transfer_to_account: HostFunction<[Cost; 7]>,
pub transfer_from_purse_to_account: HostFunction<[Cost; 9]>,
pub transfer_from_purse_to_purse: HostFunction<[Cost; 8]>,
pub get_balance: HostFunction<[Cost; 3]>,
pub get_phase: HostFunction<[Cost; 1]>,
pub get_system_contract: HostFunction<[Cost; 3]>,
pub get_main_purse: HostFunction<[Cost; 1]>,
pub read_host_buffer: HostFunction<[Cost; 3]>,
pub create_contract_package_at_hash: HostFunction<[Cost; 2]>,
pub create_contract_user_group: HostFunction<[Cost; 8]>,
pub add_contract_version: HostFunction<[Cost; 10]>,
pub disable_contract_version: HostFunction<[Cost; 4]>,
pub call_contract: HostFunction<[Cost; 7]>,
pub call_versioned_contract: HostFunction<[Cost; 9]>,
pub get_named_arg_size: HostFunction<[Cost; 3]>,
pub get_named_arg: HostFunction<[Cost; 4]>,
pub remove_contract_user_group: HostFunction<[Cost; 4]>,
pub provision_contract_user_group_uref: HostFunction<[Cost; 5]>,
pub remove_contract_user_group_urefs: HostFunction<[Cost; 6]>,
pub print: HostFunction<[Cost; 2]>,
pub blake2b: HostFunction<[Cost; 4]>,
}Expand description
Definition of a host function cost table.
Fields§
§read_value: HostFunction<[Cost; 3]>Cost of calling the read_value host function.
dictionary_get: HostFunction<[Cost; 3]>Cost of calling the dictionary_get host function.
write: HostFunction<[Cost; 4]>Cost of calling the write host function.
dictionary_put: HostFunction<[Cost; 4]>Cost of calling the dictionary_put host function.
add: HostFunction<[Cost; 4]>Cost of calling the add host function.
new_uref: HostFunction<[Cost; 3]>Cost of calling the new_uref host function.
load_named_keys: HostFunction<[Cost; 2]>Cost of calling the load_named_keys host function.
ret: HostFunction<[Cost; 2]>Cost of calling the ret host function.
get_key: HostFunction<[Cost; 5]>Cost of calling the get_key host function.
has_key: HostFunction<[Cost; 2]>Cost of calling the has_key host function.
put_key: HostFunction<[Cost; 4]>Cost of calling the put_key host function.
remove_key: HostFunction<[Cost; 2]>Cost of calling the remove_key host function.
revert: HostFunction<[Cost; 1]>Cost of calling the revert host function.
is_valid_uref: HostFunction<[Cost; 2]>Cost of calling the is_valid_uref host function.
add_associated_key: HostFunction<[Cost; 3]>Cost of calling the add_associated_key host function.
remove_associated_key: HostFunction<[Cost; 2]>Cost of calling the remove_associated_key host function.
update_associated_key: HostFunction<[Cost; 3]>Cost of calling the update_associated_key host function.
set_action_threshold: HostFunction<[Cost; 2]>Cost of calling the set_action_threshold host function.
get_caller: HostFunction<[Cost; 1]>Cost of calling the get_caller host function.
get_blocktime: HostFunction<[Cost; 1]>Cost of calling the get_blocktime host function.
create_purse: HostFunction<[Cost; 2]>Cost of calling the create_purse host function.
transfer_to_account: HostFunction<[Cost; 7]>Cost of calling the transfer_to_account host function.
transfer_from_purse_to_account: HostFunction<[Cost; 9]>Cost of calling the transfer_from_purse_to_account host function.
transfer_from_purse_to_purse: HostFunction<[Cost; 8]>Cost of calling the transfer_from_purse_to_purse host function.
get_balance: HostFunction<[Cost; 3]>Cost of calling the get_balance host function.
get_phase: HostFunction<[Cost; 1]>Cost of calling the get_phase host function.
get_system_contract: HostFunction<[Cost; 3]>Cost of calling the get_system_contract host function.
get_main_purse: HostFunction<[Cost; 1]>Cost of calling the get_main_purse host function.
read_host_buffer: HostFunction<[Cost; 3]>Cost of calling the read_host_buffer host function.
create_contract_package_at_hash: HostFunction<[Cost; 2]>Cost of calling the create_contract_package_at_hash host function.
create_contract_user_group: HostFunction<[Cost; 8]>Cost of calling the create_contract_user_group host function.
add_contract_version: HostFunction<[Cost; 10]>Cost of calling the add_contract_version host function.
disable_contract_version: HostFunction<[Cost; 4]>Cost of calling the disable_contract_version host function.
call_contract: HostFunction<[Cost; 7]>Cost of calling the call_contract host function.
call_versioned_contract: HostFunction<[Cost; 9]>Cost of calling the call_versioned_contract host function.
get_named_arg_size: HostFunction<[Cost; 3]>Cost of calling the get_named_arg_size host function.
get_named_arg: HostFunction<[Cost; 4]>Cost of calling the get_named_arg host function.
remove_contract_user_group: HostFunction<[Cost; 4]>Cost of calling the remove_contract_user_group host function.
provision_contract_user_group_uref: HostFunction<[Cost; 5]>Cost of calling the provision_contract_user_group_uref host function.
remove_contract_user_group_urefs: HostFunction<[Cost; 6]>Cost of calling the remove_contract_user_group_urefs host function.
print: HostFunction<[Cost; 2]>Cost of calling the print host function.
blake2b: HostFunction<[Cost; 4]>Cost of calling the blake2b host function.
Trait Implementations§
source§impl Clone for HostFunctionCosts
impl Clone for HostFunctionCosts
source§fn clone(&self) -> HostFunctionCosts
fn clone(&self) -> HostFunctionCosts
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl DataSize for HostFunctionCosts
impl DataSize for HostFunctionCosts
source§const IS_DYNAMIC: bool = false
const IS_DYNAMIC: bool = false
true, the type has a heap size that can vary at runtime, depending on the actual value.source§const STATIC_HEAP_SIZE: usize = 0usize
const STATIC_HEAP_SIZE: usize = 0usize
IS_DYNAMIC is false, this is
the total amount of heap memory occupied by the value. Otherwise this is a lower bound.source§fn estimate_heap_size(&self) -> usize
fn estimate_heap_size(&self) -> usize
source§impl Debug for HostFunctionCosts
impl Debug for HostFunctionCosts
source§impl Default for HostFunctionCosts
impl Default for HostFunctionCosts
source§impl<'de> Deserialize<'de> for HostFunctionCosts
impl<'de> Deserialize<'de> for HostFunctionCosts
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
source§impl Distribution<HostFunctionCosts> for Standard
impl Distribution<HostFunctionCosts> for Standard
source§fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> HostFunctionCosts
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> HostFunctionCosts
T, using rng as the source of randomness.source§impl FromBytes for HostFunctionCosts
impl FromBytes for HostFunctionCosts
source§impl PartialEq<HostFunctionCosts> for HostFunctionCosts
impl PartialEq<HostFunctionCosts> for HostFunctionCosts
source§fn eq(&self, other: &HostFunctionCosts) -> bool
fn eq(&self, other: &HostFunctionCosts) -> bool
self and other values to be equal, and is used
by ==.source§impl Serialize for HostFunctionCosts
impl Serialize for HostFunctionCosts
source§impl ToBytes for HostFunctionCosts
impl ToBytes for HostFunctionCosts
source§fn serialized_length(&self) -> usize
fn serialized_length(&self) -> usize
Vec<u8> which would be returned from a successful call to
to_bytes() or into_bytes(). The data is not actually serialized, so this call is
relatively cheap.impl Copy for HostFunctionCosts
impl Eq for HostFunctionCosts
impl StructuralEq for HostFunctionCosts
impl StructuralPartialEq for HostFunctionCosts
Auto Trait Implementations§
impl RefUnwindSafe for HostFunctionCosts
impl Send for HostFunctionCosts
impl Sync for HostFunctionCosts
impl Unpin for HostFunctionCosts
impl UnwindSafe for HostFunctionCosts
Blanket Implementations§
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§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.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pipe for T
impl<T> Pipe for T
§impl<T> PipeAsRef for T
impl<T> PipeAsRef for T
§impl<T> PipeBorrow for T
impl<T> PipeBorrow for T
§impl<T> PipeDeref for T
impl<T> PipeDeref for T
§impl<T> PipeRef for T
impl<T> PipeRef for T
§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,
§fn pipe_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap<F, R>(self, func: F) -> Selfwhere
F: FnOnce(&Self) -> R,
fn tap<F, R>(self, func: F) -> Selfwhere F: FnOnce(&Self) -> R,
§fn tap_dbg<F, R>(self, func: F) -> Selfwhere
F: FnOnce(&Self) -> R,
fn tap_dbg<F, R>(self, func: F) -> Selfwhere F: FnOnce(&Self) -> R,
tap in debug builds, and does nothing in release builds.§fn tap_mut<F, R>(self, func: F) -> Selfwhere
F: FnOnce(&mut Self) -> R,
fn tap_mut<F, R>(self, func: F) -> Selfwhere F: FnOnce(&mut Self) -> R,
§fn tap_mut_dbg<F, R>(self, func: F) -> Selfwhere
F: FnOnce(&mut Self) -> R,
fn tap_mut_dbg<F, R>(self, func: F) -> Selfwhere F: FnOnce(&mut Self) -> R,
tap_mut in debug builds, and does nothing in release builds.§impl<T, U> TapAsRef<U> for Twhere
U: ?Sized,
impl<T, U> TapAsRef<U> for Twhere U: ?Sized,
§fn tap_ref<F, R>(self, func: F) -> Selfwhere
Self: AsRef<T>,
F: FnOnce(&T) -> R,
fn tap_ref<F, R>(self, func: F) -> Selfwhere Self: AsRef<T>, F: FnOnce(&T) -> R,
§fn tap_ref_dbg<F, R>(self, func: F) -> Selfwhere
Self: AsRef<T>,
F: FnOnce(&T) -> R,
fn tap_ref_dbg<F, R>(self, func: F) -> Selfwhere Self: AsRef<T>, F: FnOnce(&T) -> R,
tap_ref in debug builds, and does nothing in release builds.§fn tap_ref_mut<F, R>(self, func: F) -> Selfwhere
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_ref_mut<F, R>(self, func: F) -> Selfwhere Self: AsMut<T>, F: FnOnce(&mut T) -> R,
§fn tap_ref_mut_dbg<F, R>(self, func: F) -> Selfwhere
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_ref_mut_dbg<F, R>(self, func: F) -> Selfwhere Self: AsMut<T>, F: FnOnce(&mut T) -> R,
tap_ref_mut in debug builds, and does nothing in release builds.§impl<T, U> TapBorrow<U> for Twhere
U: ?Sized,
impl<T, U> TapBorrow<U> for Twhere U: ?Sized,
§fn tap_borrow<F, R>(self, func: F) -> Selfwhere
Self: Borrow<T>,
F: FnOnce(&T) -> R,
fn tap_borrow<F, R>(self, func: F) -> Selfwhere Self: Borrow<T>, F: FnOnce(&T) -> R,
§fn tap_borrow_dbg<F, R>(self, func: F) -> Selfwhere
Self: Borrow<T>,
F: FnOnce(&T) -> R,
fn tap_borrow_dbg<F, R>(self, func: F) -> Selfwhere Self: Borrow<T>, F: FnOnce(&T) -> R,
tap_borrow in debug builds, and does nothing in release builds.§fn tap_borrow_mut<F, R>(self, func: F) -> Selfwhere
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_borrow_mut<F, R>(self, func: F) -> Selfwhere Self: BorrowMut<T>, F: FnOnce(&mut T) -> R,
§fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Selfwhere
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Selfwhere Self: BorrowMut<T>, F: FnOnce(&mut T) -> R,
tap_borrow_mut in debug builds, and does nothing in release
builds.§impl<T> TapDeref for T
impl<T> TapDeref for T
§fn tap_deref<F, R>(self, func: F) -> Selfwhere
Self: Deref,
F: FnOnce(&Self::Target) -> R,
fn tap_deref<F, R>(self, func: F) -> Selfwhere Self: Deref, F: FnOnce(&Self::Target) -> R,
self for inspection.§fn tap_deref_dbg<F, R>(self, func: F) -> Selfwhere
Self: Deref,
F: FnOnce(&Self::Target) -> R,
fn tap_deref_dbg<F, R>(self, func: F) -> Selfwhere Self: Deref, F: FnOnce(&Self::Target) -> R,
tap_deref in debug builds, and does nothing in release builds.§fn tap_deref_mut<F, R>(self, func: F) -> Selfwhere
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
fn tap_deref_mut<F, R>(self, func: F) -> Selfwhere Self: DerefMut, F: FnOnce(&mut Self::Target) -> R,
self for modification.§fn tap_deref_mut_dbg<F, R>(self, func: F) -> Selfwhere
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
fn tap_deref_mut_dbg<F, R>(self, func: F) -> Selfwhere Self: DerefMut, F: FnOnce(&mut Self::Target) -> R,
tap_deref_mut in debug builds, and does nothing in release
builds.