pub struct ProtocolParameters { /* private fields */ }Expand description
Protocol parameters restricted to the set immediately useful to this library.
Implementations§
Source§impl ProtocolParameters
impl ProtocolParameters
Sourcepub fn mainnet() -> Self
pub fn mainnet() -> Self
Current Mainnet protocol parameters.
Sourcepub fn preprod() -> Self
pub fn preprod() -> Self
Current PreProd protocol parameters.
Sourcepub fn preview() -> Self
pub fn preview() -> Self
Current PreProd protocol parameters.
FIXME :: This has not been verified.
Sourcepub fn posix_to_slot(&self, posix: Duration) -> u64
pub fn posix_to_slot(&self, posix: Duration) -> u64
Translate a posix time to a slot number for that particular network.
Sourcepub fn with_fee_per_byte(self, fee_per_byte: u64) -> Self
pub fn with_fee_per_byte(self, fee_per_byte: u64) -> Self
Specify the multiplier fee coefficient on the size of transactions, in lovelace/bytes
Sourcepub fn with_fee_constant(self, fee_constant: u64) -> Self
pub fn with_fee_constant(self, fee_constant: u64) -> Self
Flat/fixed fee for all transactions, in lovelace
Sourcepub fn with_collateral_coefficient(self, collateral_coefficient: f64) -> Self
pub fn with_collateral_coefficient(self, collateral_coefficient: f64) -> Self
Specify the coefficient to apply to fees to obtain the collateral, in lovelace
Sourcepub fn with_referenced_scripts_base_fee_per_byte(
self,
referenced_scripts_base_fee_per_byte: u64,
) -> Self
pub fn with_referenced_scripts_base_fee_per_byte( self, referenced_scripts_base_fee_per_byte: u64, ) -> Self
Specify the initial fee coefficient on the size of referenced scripts, in lovelace/bytes
Sourcepub fn with_referenced_scripts_fee_multiplier(
self,
referenced_scripts_fee_multiplier: Ratio<u64>,
) -> Self
pub fn with_referenced_scripts_fee_multiplier( self, referenced_scripts_fee_multiplier: Ratio<u64>, ) -> Self
Specify the multiplier exponentially increasing the cost of reference scripts at each size step.
Sourcepub fn with_referenced_scripts_fee_step_size(
self,
referenced_scripts_fee_step_size: u64,
) -> Self
pub fn with_referenced_scripts_fee_step_size( self, referenced_scripts_fee_step_size: u64, ) -> Self
Specify the size of each step after which the cost of referenced script bytes increases, in bytes
Sourcepub fn with_execution_price_mem(self, price_mem: f64) -> Self
pub fn with_execution_price_mem(self, price_mem: f64) -> Self
Specify the price of a single memory execution unit, in lovelace/unit
Sourcepub fn with_execution_price_cpu(self, price_cpu: f64) -> Self
pub fn with_execution_price_cpu(self, price_cpu: f64) -> Self
Specify the price of a single cpu execution unit, in lovelace/unit
Sourcepub fn with_start_time(self, start_time: u64) -> Self
pub fn with_start_time(self, start_time: u64) -> Self
Specify the network POSIX start time, in seconds.
Sourcepub fn with_first_shelley_slot(self, first_shelley_slot: u64) -> Self
pub fn with_first_shelley_slot(self, first_shelley_slot: u64) -> Self
The first (not-necessarily active) slot of the Shelley era.
Sourcepub fn with_plutus_v3_cost_model(self, cost_model: Vec<i64>) -> Self
pub fn with_plutus_v3_cost_model(self, cost_model: Vec<i64>) -> Self
Specify the cost model for Plutus version 3, ordered according to the “spec”
Source§impl ProtocolParameters
impl ProtocolParameters
Sourcepub fn base_fee(&self, size: u64) -> u64
pub fn base_fee(&self, size: u64) -> u64
Base transaction fee, computed from the size of a serialised transaction.
Sourcepub fn referenced_scripts_fee(&self, size: u64) -> u64
pub fn referenced_scripts_fee(&self, size: u64) -> u64
Compute the tiered-fee of included reference scripts according to ADR- 2024-08-14_009-refscripts-fee-change.
Sourcepub fn minimum_collateral(&self, base_fee: u64) -> u64
pub fn minimum_collateral(&self, base_fee: u64) -> u64
Compute the minimum collateral value, based on the current transaction fee.
Sourcepub fn price_mem(&self, execution_units: u64) -> u64
pub fn price_mem(&self, execution_units: u64) -> u64
Compute the price, in lovelace, of memory units usage.
Sourcepub fn price_cpu(&self, execution_units: u64) -> u64
pub fn price_cpu(&self, execution_units: u64) -> u64
Compute the price, in lovelace, of cpu units usage.
pub fn plutus_v3_cost_model(&self) -> &Vec<i64>
Trait Implementations§
Source§impl Clone for ProtocolParameters
impl Clone for ProtocolParameters
Source§fn clone(&self) -> ProtocolParameters
fn clone(&self) -> ProtocolParameters
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProtocolParameters
impl Debug for ProtocolParameters
Source§impl Default for ProtocolParameters
impl Default for ProtocolParameters
Source§impl From<&ProtocolParameters> for SlotConfig
impl From<&ProtocolParameters> for SlotConfig
Source§fn from(params: &ProtocolParameters) -> Self
fn from(params: &ProtocolParameters) -> Self
Source§impl From<Network> for ProtocolParameters
impl From<Network> for ProtocolParameters
Source§fn from(network: Network) -> ProtocolParameters
fn from(network: Network) -> ProtocolParameters
Source§impl PartialEq for ProtocolParameters
impl PartialEq for ProtocolParameters
Source§impl PartialOrd for ProtocolParameters
impl PartialOrd for ProtocolParameters
impl StructuralPartialEq for ProtocolParameters
Auto Trait Implementations§
impl Freeze for ProtocolParameters
impl RefUnwindSafe for ProtocolParameters
impl Send for ProtocolParameters
impl Sync for ProtocolParameters
impl Unpin for ProtocolParameters
impl UnwindSafe for ProtocolParameters
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,
§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,
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>
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>
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§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.