#[repr(C)]pub struct Oracle {
pub store: Pubkey,
/* private fields */
}
Expand description
Oracle Account.
Fields§
§store: Pubkey
Store.
Implementations§
Source§impl Oracle
impl Oracle
Sourcepub fn is_cleared(&self) -> bool
pub fn is_cleared(&self) -> bool
Return whether the oracle is cleared.
Sourcepub fn min_oracle_slot(&self) -> Option<u64>
pub fn min_oracle_slot(&self) -> Option<u64>
Get min oracle slot.
Sourcepub fn min_oracle_ts(&self) -> i64
pub fn min_oracle_ts(&self) -> i64
Get min oracle ts.
Sourcepub fn max_oracle_ts(&self) -> i64
pub fn max_oracle_ts(&self) -> i64
Get max oracle ts.
Sourcepub fn get_primary_price(
&self,
token: &Pubkey,
allow_synthetic: bool,
) -> Result<Price<u128>>
pub fn get_primary_price( &self, token: &Pubkey, allow_synthetic: bool, ) -> Result<Price<u128>>
Get primary price for the given token.
Trait Implementations§
Source§impl AccountDeserialize for Oracle
impl AccountDeserialize for Oracle
Source§fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
Deserializes previously initialized account data. Should fail for all
uninitialized accounts, where the bytes are zeroed. Implementations
should be unique to a particular account type so that one can never
successfully deserialize the data of one account type into another.
For example, if the SPL token program were to implement this trait,
it should be impossible to deserialize a
Mint
account into a token
Account
.Source§fn try_deserialize_unchecked(buf: &mut &[u8]) -> Result<Self>
fn try_deserialize_unchecked(buf: &mut &[u8]) -> Result<Self>
Deserializes account data without checking the account discriminator.
This should only be used on account initialization, when the bytes of
the account are zeroed.
Source§impl Discriminator for Oracle
impl Discriminator for Oracle
const DISCRIMINATOR: [u8; 8]
fn discriminator() -> [u8; 8]
impl Copy for Oracle
impl Pod for Oracle
impl ZeroCopy for Oracle
Auto Trait Implementations§
impl Freeze for Oracle
impl RefUnwindSafe for Oracle
impl Send for Oracle
impl Sync for Oracle
impl Unpin for Oracle
impl UnwindSafe for Oracle
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
§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self
.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 more