#[repr(C)]pub struct Order { /* private fields */ }
Expand description
Order.
Implementations§
Source§impl Order
impl Order
Sourcepub fn signer(&self) -> ActionSigner
pub fn signer(&self) -> ActionSigner
Get signer.
Sourcepub fn validate_valid_from_ts(&self) -> Result<(), Error>
pub fn validate_valid_from_ts(&self) -> Result<(), Error>
Validate that current timestamp >= valid_from_ts
.
Sourcepub fn validate_trigger_price(
&self,
index_price: &Price<u128>,
) -> Result<(), Error>
pub fn validate_trigger_price( &self, index_price: &Price<u128>, ) -> Result<(), Error>
Validate trigger price.
Sourcepub fn validate_output_amount(&self, output_amount: u128) -> Result<(), Error>
pub fn validate_output_amount(&self, output_amount: u128) -> Result<(), Error>
Validate output amount.
Sourcepub fn secondary_output_token(&self) -> Result<Pubkey, Error>
pub fn secondary_output_token(&self) -> Result<Pubkey, Error>
Get secondary output token (pnl token).
Sourcepub fn params(&self) -> &OrderActionParams
pub fn params(&self) -> &OrderActionParams
Get order params.
Sourcepub fn swap(&self) -> &SwapActionParams
pub fn swap(&self) -> &SwapActionParams
Get swap params.
Sourcepub fn market_token(&self) -> &Pubkey
pub fn market_token(&self) -> &Pubkey
Get market token.
Sourcepub fn tokens(&self) -> &OrderTokenAccounts
pub fn tokens(&self) -> &OrderTokenAccounts
Get token accounts.
Trait Implementations§
Source§impl AccountDeserialize for Order
impl AccountDeserialize for Order
Source§fn try_deserialize(buf: &mut &[u8]) -> Result<Order, Error>
fn try_deserialize(buf: &mut &[u8]) -> Result<Order, Error>
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§impl Action for Order
impl Action for Order
Source§const MIN_EXECUTION_LAMPORTS: u64 = 300_000u64
const MIN_EXECUTION_LAMPORTS: u64 = 300_000u64
Min execution lamports.
Source§fn header(&self) -> &ActionHeader
fn header(&self) -> &ActionHeader
Get the header.
Source§impl Closable for Order
impl Closable for Order
Source§type ClosedEvent = OrderRemoved
type ClosedEvent = OrderRemoved
Closed Event.
Source§fn to_closed_event(
&self,
address: &Pubkey,
reason: &str,
) -> Result<<Order as Closable>::ClosedEvent, Error>
fn to_closed_event( &self, address: &Pubkey, reason: &str, ) -> Result<<Order as Closable>::ClosedEvent, Error>
To closed event.
Source§impl<'de> Deserialize<'de> for Order
impl<'de> Deserialize<'de> for Order
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Order, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Order, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Discriminator for Order
impl Discriminator for Order
const DISCRIMINATOR: [u8; 8]
fn discriminator() -> [u8; 8]
Source§impl Serialize for Order
impl Serialize for Order
Source§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 Order
impl Pod for Order
impl ZeroCopy for Order
Auto Trait Implementations§
impl Freeze for Order
impl RefUnwindSafe for Order
impl Send for Order
impl Sync for Order
impl Unpin for Order
impl UnwindSafe for Order
Blanket Implementations§
Source§impl<T> ActionExt for Twhere
T: Action,
impl<T> ActionExt for Twhere
T: Action,
Source§fn signer(&self) -> ActionSignerwhere
Self: Seed,
fn signer(&self) -> ActionSignerwhere
Self: Seed,
Action signer.
Source§fn execution_lamports(&self, execution_lamports: u64) -> u64
fn execution_lamports(&self, execution_lamports: u64) -> u64
Execution lamports.
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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