pub struct FeeScheduleState {
pub cap_fees: bool,
pub flat: U256,
pub proportional: U256,
pub imbalance_penalty: Option<Vec<(U256, U256)>>,
pub penalty_func: Option<Interpolate>,
}Expand description
Mediation fee schedule parameters.
Fields§
§cap_fees: bool§flat: U256§proportional: U256§imbalance_penalty: Option<Vec<(U256, U256)>>§penalty_func: Option<Interpolate>Implementations§
Source§impl FeeScheduleState
impl FeeScheduleState
Sourcepub fn update_penalty_func(&mut self)
pub fn update_penalty_func(&mut self)
Updates the penalty function based on capacity updates.
Sourcepub fn fee(
&self,
balance: Rational,
amount: Rational,
) -> Result<Rational, String>
pub fn fee( &self, balance: Rational, amount: Rational, ) -> Result<Rational, String>
Returns the fee based on penalty function.
Sourcepub fn mediation_fee_func(
schedule_in: Self,
schedule_out: Self,
balance_in: TokenAmount,
balance_out: TokenAmount,
receivable: TokenAmount,
amount_with_fees: Option<TokenAmount>,
amount_without_fees: Option<TokenAmount>,
cap_fees: bool,
) -> Result<Interpolate, String>
pub fn mediation_fee_func( schedule_in: Self, schedule_out: Self, balance_in: TokenAmount, balance_out: TokenAmount, receivable: TokenAmount, amount_with_fees: Option<TokenAmount>, amount_without_fees: Option<TokenAmount>, cap_fees: bool, ) -> Result<Interpolate, String>
Returns the mediation fee Interpolate instance.
Trait Implementations§
Source§impl Clone for FeeScheduleState
impl Clone for FeeScheduleState
Source§fn clone(&self) -> FeeScheduleState
fn clone(&self) -> FeeScheduleState
Returns a duplicate 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 FeeScheduleState
impl Debug for FeeScheduleState
Source§impl Default for FeeScheduleState
impl Default for FeeScheduleState
Source§fn default() -> FeeScheduleState
fn default() -> FeeScheduleState
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for FeeScheduleState
impl<'de> Deserialize<'de> for FeeScheduleState
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for FeeScheduleState
impl PartialEq for FeeScheduleState
Source§impl Serialize for FeeScheduleState
impl Serialize for FeeScheduleState
impl Eq for FeeScheduleState
impl StructuralPartialEq for FeeScheduleState
Auto Trait Implementations§
impl Freeze for FeeScheduleState
impl RefUnwindSafe for FeeScheduleState
impl Send for FeeScheduleState
impl Sync for FeeScheduleState
impl Unpin for FeeScheduleState
impl UnwindSafe for FeeScheduleState
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> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.