Struct levana_perpswap_cosmos_msg::prelude::Price
pub struct Price(/* private fields */);
Expand description
The price of the pair as used internally by the protocol, given as collateral / notional
.
Implementations§
§impl Price
impl Price
pub fn into_base_price(self, market_type: MarketType) -> PriceBaseInQuote
pub fn into_base_price(self, market_type: MarketType) -> PriceBaseInQuote
Convert to the external representation.
pub fn collateral_to_notional_non_zero(
&self,
amount: NonZero<Collateral>
) -> NonZero<Notional>
pub fn collateral_to_notional_non_zero( &self, amount: NonZero<Collateral> ) -> NonZero<Notional>
Convert an amount in collateral into an amount in notional, but with types
§impl Price
impl Price
pub fn try_from_number(number: Signed<Decimal256>) -> Result<Price, Error>
pub fn try_from_number(number: Signed<Decimal256>) -> Result<Price, Error>
Attempt to convert a Number into a price.
This will fail on zero or negative numbers. Callers need to ensure that the incoming Number is a protocol price, not a PriceBaseInQuote.
pub fn into_number(&self) -> Signed<Decimal256>
pub fn into_number(&self) -> Signed<Decimal256>
Convert to a raw Number.
Note that in the future we may want to hide this functionality to force usage of well-typed interfaces here.
pub fn into_decimal256(self) -> Decimal256
pub fn into_decimal256(self) -> Decimal256
Convert to a raw Decimal256.
Trait Implementations§
§impl<'de> Deserialize<'de> for Price
impl<'de> Deserialize<'de> for Price
§fn deserialize<__D>(
__deserializer: __D
) -> Result<Price, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<Price, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl JsonSchema for Price
impl JsonSchema for Price
§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
§fn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read more§impl Ord for Price
impl Ord for Price
§impl PartialOrd for Price
impl PartialOrd for Price
§fn partial_cmp(&self, other: &Price) -> Option<Ordering>
fn partial_cmp(&self, other: &Price) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
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§impl Serialize for Price
impl Serialize for Price
§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for Price
impl Eq for Price
impl StructuralEq for Price
impl StructuralPartialEq for Price
Auto Trait Implementations§
impl RefUnwindSafe for Price
impl Send for Price
impl Sync for Price
impl Unpin for Price
impl UnwindSafe for Price
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere T: CastFrom<U>,
Casts
self
to type T
. The semantics of numeric casting with the as
operator are followed, so <T as As>::as_::<U>
can be used in the same way as T as U
for numeric conversions. Read moresource§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
§impl<T> QueryResultExt for Twhere
T: Serialize,
impl<T> QueryResultExt for Twhere T: Serialize,
§fn query_result(&self) -> Result<Binary, Error>
fn query_result(&self) -> Result<Binary, Error>
Convert the value to its JSON representation