Struct pythnet_sdk::messages::PriceFeedMessage
source · #[repr(C)]pub struct PriceFeedMessage {
pub feed_id: FeedId,
pub price: i64,
pub conf: u64,
pub exponent: i32,
pub publish_time: i64,
pub prev_publish_time: i64,
pub ema_price: i64,
pub ema_conf: u64,
}
Fields§
§feed_id: FeedId
§price: i64
§conf: u64
§exponent: i32
§publish_time: i64
The timestamp of this price update in seconds
prev_publish_time: i64
The timestamp of the previous price update. This field is intended to allow users to identify the single unique price update for any moment in time: for any time t, the unique update is the one such that prev_publish_time < t <= publish_time.
Note that there may not be such an update while we are migrating to the new message-sending logic, as some price updates on pythnet may not be sent to other chains (because the message-sending logic may not have triggered). We can solve this problem by making the message-sending mandatory (which we can do once publishers have migrated over).
Additionally, this field may be equal to publish_time if the message is sent on a slot where where the aggregation was unsuccesful. This problem will go away once all publishers have migrated over to a recent version of pyth-agent.
ema_price: i64
§ema_conf: u64
Trait Implementations§
source§impl BorshDeserialize for PriceFeedMessagewhere
FeedId: BorshDeserialize,
i64: BorshDeserialize,
u64: BorshDeserialize,
i32: BorshDeserialize,
impl BorshDeserialize for PriceFeedMessagewhere
FeedId: BorshDeserialize,
i64: BorshDeserialize,
u64: BorshDeserialize,
i32: BorshDeserialize,
fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>
source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
source§impl BorshSchema for PriceFeedMessage
impl BorshSchema for PriceFeedMessage
source§fn declaration() -> Declaration
fn declaration() -> Declaration
source§fn add_definitions_recursively(
definitions: &mut HashMap<Declaration, Definition>,
)
fn add_definitions_recursively( definitions: &mut HashMap<Declaration, Definition>, )
source§fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition>,
)
fn add_definition( declaration: String, definition: Definition, definitions: &mut HashMap<String, Definition>, )
fn schema_container() -> BorshSchemaContainer
source§impl BorshSerialize for PriceFeedMessage
impl BorshSerialize for PriceFeedMessage
source§impl Clone for PriceFeedMessage
impl Clone for PriceFeedMessage
source§fn clone(&self) -> PriceFeedMessage
fn clone(&self) -> PriceFeedMessage
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for PriceFeedMessage
impl Debug for PriceFeedMessage
source§impl<'de> Deserialize<'de> for PriceFeedMessage
impl<'de> Deserialize<'de> for PriceFeedMessage
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 PartialEq for PriceFeedMessage
impl PartialEq for PriceFeedMessage
source§impl Serialize for PriceFeedMessage
impl Serialize for PriceFeedMessage
impl Copy for PriceFeedMessage
impl StructuralPartialEq for PriceFeedMessage
Auto Trait Implementations§
impl Freeze for PriceFeedMessage
impl RefUnwindSafe for PriceFeedMessage
impl Send for PriceFeedMessage
impl Sync for PriceFeedMessage
impl Unpin for PriceFeedMessage
impl UnwindSafe for PriceFeedMessage
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,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)