pub enum ExtCosts {
Show 61 variants base = 0, contract_loading_base = 1, contract_loading_bytes = 2, read_memory_base = 3, read_memory_byte = 4, write_memory_base = 5, write_memory_byte = 6, read_register_base = 7, read_register_byte = 8, write_register_base = 9, write_register_byte = 10, utf8_decoding_base = 11, utf8_decoding_byte = 12, utf16_decoding_base = 13, utf16_decoding_byte = 14, sha256_base = 15, sha256_byte = 16, keccak256_base = 17, keccak256_byte = 18, keccak512_base = 19, keccak512_byte = 20, ripemd160_base = 21, ripemd160_block = 22, ecrecover_base = 23, log_base = 24, log_byte = 25, storage_write_base = 26, storage_write_key_byte = 27, storage_write_value_byte = 28, storage_write_evicted_byte = 29, storage_read_base = 30, storage_read_key_byte = 31, storage_read_value_byte = 32, storage_remove_base = 33, storage_remove_key_byte = 34, storage_remove_ret_value_byte = 35, storage_has_key_base = 36, storage_has_key_byte = 37, storage_iter_create_prefix_base = 38, storage_iter_create_prefix_byte = 39, storage_iter_create_range_base = 40, storage_iter_create_from_byte = 41, storage_iter_create_to_byte = 42, storage_iter_next_base = 43, storage_iter_next_key_byte = 44, storage_iter_next_value_byte = 45, touching_trie_node = 46, read_cached_trie_node = 47, promise_and_base = 48, promise_and_per_promise = 49, promise_return = 50, validator_stake_base = 51, validator_total_stake_base = 52, alt_bn128_g1_multiexp_base = 53, alt_bn128_g1_multiexp_element = 54, alt_bn128_pairing_check_base = 55, alt_bn128_pairing_check_element = 56, alt_bn128_g1_sum_base = 57, alt_bn128_g1_sum_element = 58, ed25519_verify_base = 59, ed25519_verify_byte = 60,
}
Expand description

Strongly-typed representation of the fees for counting.

Do not change the enum discriminants here, they are used for borsh (de-)serialization.

Variants§

§

base = 0

§

contract_loading_base = 1

§

contract_loading_bytes = 2

§

read_memory_base = 3

§

read_memory_byte = 4

§

write_memory_base = 5

§

write_memory_byte = 6

§

read_register_base = 7

§

read_register_byte = 8

§

write_register_base = 9

§

write_register_byte = 10

§

utf8_decoding_base = 11

§

utf8_decoding_byte = 12

§

utf16_decoding_base = 13

§

utf16_decoding_byte = 14

§

sha256_base = 15

§

sha256_byte = 16

§

keccak256_base = 17

§

keccak256_byte = 18

§

keccak512_base = 19

§

keccak512_byte = 20

§

ripemd160_base = 21

§

ripemd160_block = 22

§

ecrecover_base = 23

§

log_base = 24

§

log_byte = 25

§

storage_write_base = 26

§

storage_write_key_byte = 27

§

storage_write_value_byte = 28

§

storage_write_evicted_byte = 29

§

storage_read_base = 30

§

storage_read_key_byte = 31

§

storage_read_value_byte = 32

§

storage_remove_base = 33

§

storage_remove_key_byte = 34

§

storage_remove_ret_value_byte = 35

§

storage_has_key_base = 36

§

storage_has_key_byte = 37

§

storage_iter_create_prefix_base = 38

§

storage_iter_create_prefix_byte = 39

§

storage_iter_create_range_base = 40

§

storage_iter_create_from_byte = 41

§

storage_iter_create_to_byte = 42

§

storage_iter_next_base = 43

§

storage_iter_next_key_byte = 44

§

storage_iter_next_value_byte = 45

§

touching_trie_node = 46

§

read_cached_trie_node = 47

§

promise_and_base = 48

§

promise_and_per_promise = 49

§

promise_return = 50

§

validator_stake_base = 51

§

validator_total_stake_base = 52

§

alt_bn128_g1_multiexp_base = 53

§

alt_bn128_g1_multiexp_element = 54

§

alt_bn128_pairing_check_base = 55

§

alt_bn128_pairing_check_element = 56

§

alt_bn128_g1_sum_base = 57

§

alt_bn128_g1_sum_element = 58

§

ed25519_verify_base = 59

§

ed25519_verify_byte = 60

Implementations§

source§

impl ExtCosts

source

pub fn gas(self, config: &ExtCostsConfig) -> Gas

source

pub fn compute(self, config: &ExtCostsConfig) -> Compute

source

pub fn param(&self) -> Parameter

Trait Implementations§

source§

impl Clone for ExtCosts

source§

fn clone(&self) -> ExtCosts

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ExtCosts

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ExtCosts

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Enum for ExtCosts

source§

const LENGTH: usize = 61usize

Length of the enum.
source§

fn from_usize(value: usize) -> Self

Takes an usize, and returns an element matching into_usize function.
source§

fn into_usize(self) -> usize

Returns an unique identifier for a value within range of 0..Array::LENGTH.
source§

impl<V> EnumArray<V> for ExtCosts

§

type Array = [V; 61]

Representation of an enum map for type V.
source§

impl Hash for ExtCosts

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl IntoEnumIterator for ExtCosts

source§

impl Ord for ExtCosts

source§

fn cmp(&self, other: &ExtCosts) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for ExtCosts

source§

fn eq(&self, other: &ExtCosts) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for ExtCosts

source§

fn partial_cmp(&self, other: &ExtCosts) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Copy for ExtCosts

source§

impl Eq for ExtCosts

source§

impl StructuralEq for ExtCosts

source§

impl StructuralPartialEq for ExtCosts

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

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
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.