pub struct PerpMarket {Show 28 fields
pub pubkey: Pubkey,
pub amm: AMM,
pub pnl_pool: PoolBalance,
pub name: [u8; 32],
pub insurance_claim: InsuranceClaim,
pub unrealized_pnl_max_imbalance: u64,
pub expiry_ts: i64,
pub expiry_price: i64,
pub next_fill_record_id: u64,
pub next_funding_rate_record_id: u64,
pub next_curve_record_id: u64,
pub imf_factor: u32,
pub unrealized_pnl_imf_factor: u32,
pub liquidator_fee: u32,
pub if_liquidation_fee: u32,
pub margin_ratio_initial: u32,
pub margin_ratio_maintenance: u32,
pub unrealized_pnl_initial_asset_weight: u32,
pub unrealized_pnl_maintenance_asset_weight: u32,
pub number_of_users_with_base: u32,
pub number_of_users: u32,
pub market_index: u16,
pub status: MarketStatus,
pub contract_type: ContractType,
pub contract_tier: ContractTier,
pub padding1: bool,
pub quote_spot_market_index: u16,
pub padding: [u8; 48],
}Expand description
Account: PerpMarket
Fields§
§pubkey: Pubkey§amm: AMM§pnl_pool: PoolBalance§name: [u8; 32]§insurance_claim: InsuranceClaim§unrealized_pnl_max_imbalance: u64§expiry_ts: i64§expiry_price: i64§next_fill_record_id: u64§next_funding_rate_record_id: u64§next_curve_record_id: u64§imf_factor: u32§unrealized_pnl_imf_factor: u32§liquidator_fee: u32§if_liquidation_fee: u32§margin_ratio_initial: u32§margin_ratio_maintenance: u32§unrealized_pnl_initial_asset_weight: u32§unrealized_pnl_maintenance_asset_weight: u32§number_of_users_with_base: u32§number_of_users: u32§market_index: u16§status: MarketStatus§contract_type: ContractType§contract_tier: ContractTier§padding1: bool§quote_spot_market_index: u16§padding: [u8; 48]Trait Implementations§
Source§impl AccountDeserialize for PerpMarket
impl AccountDeserialize for PerpMarket
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 AccountSerialize for PerpMarket
impl AccountSerialize for PerpMarket
Source§impl BorshDeserialize for PerpMarketwhere
Pubkey: BorshDeserialize,
AMM: BorshDeserialize,
PoolBalance: BorshDeserialize,
[u8; 32]: BorshDeserialize,
InsuranceClaim: BorshDeserialize,
u64: BorshDeserialize,
i64: BorshDeserialize,
u32: BorshDeserialize,
u16: BorshDeserialize,
MarketStatus: BorshDeserialize,
ContractType: BorshDeserialize,
ContractTier: BorshDeserialize,
bool: BorshDeserialize,
[u8; 48]: BorshDeserialize,
impl BorshDeserialize for PerpMarketwhere
Pubkey: BorshDeserialize,
AMM: BorshDeserialize,
PoolBalance: BorshDeserialize,
[u8; 32]: BorshDeserialize,
InsuranceClaim: BorshDeserialize,
u64: BorshDeserialize,
i64: BorshDeserialize,
u32: BorshDeserialize,
u16: BorshDeserialize,
MarketStatus: BorshDeserialize,
ContractType: BorshDeserialize,
ContractTier: BorshDeserialize,
bool: BorshDeserialize,
[u8; 48]: 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>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for PerpMarketwhere
Pubkey: BorshSerialize,
AMM: BorshSerialize,
PoolBalance: BorshSerialize,
[u8; 32]: BorshSerialize,
InsuranceClaim: BorshSerialize,
u64: BorshSerialize,
i64: BorshSerialize,
u32: BorshSerialize,
u16: BorshSerialize,
MarketStatus: BorshSerialize,
ContractType: BorshSerialize,
ContractTier: BorshSerialize,
bool: BorshSerialize,
[u8; 48]: BorshSerialize,
impl BorshSerialize for PerpMarketwhere
Pubkey: BorshSerialize,
AMM: BorshSerialize,
PoolBalance: BorshSerialize,
[u8; 32]: BorshSerialize,
InsuranceClaim: BorshSerialize,
u64: BorshSerialize,
i64: BorshSerialize,
u32: BorshSerialize,
u16: BorshSerialize,
MarketStatus: BorshSerialize,
ContractType: BorshSerialize,
ContractTier: BorshSerialize,
bool: BorshSerialize,
[u8; 48]: BorshSerialize,
Source§impl Clone for PerpMarket
impl Clone for PerpMarket
Source§fn clone(&self) -> PerpMarket
fn clone(&self) -> PerpMarket
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 Discriminator for PerpMarket
impl Discriminator for PerpMarket
Source§const DISCRIMINATOR: &'static [u8]
const DISCRIMINATOR: &'static [u8]
Discriminator slice. Read more
impl Copy for PerpMarket
Auto Trait Implementations§
impl Freeze for PerpMarket
impl RefUnwindSafe for PerpMarket
impl Send for PerpMarket
impl Sync for PerpMarket
impl Unpin for PerpMarket
impl UnwindSafe for PerpMarket
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