pub struct MarginBorrowOrder<'info> {
Show 13 fields pub margin_user: Box<Account<'info, MarginUser>>, pub term_loan: AccountInfo<'info>, pub margin_account: Signer<'info>, pub claims: AccountInfo<'info>, pub claims_mint: AccountInfo<'info>, pub collateral: AccountInfo<'info>, pub collateral_mint: AccountInfo<'info>, pub underlying_token_vault: AccountInfo<'info>, pub underlying_settlement: AccountInfo<'info>, pub orderbook_mut: OrderbookMut<'info>, pub payer: Signer<'info>, pub system_program: Program<'info, System>, pub token_program: Program<'info, Token>,
}

Fields

margin_user: Box<Account<'info, MarginUser>>

The account tracking borrower debts

term_loan: AccountInfo<'info>

TermLoan account minted upon match CHECK: in instruction logic

margin_account: Signer<'info>

The margin account for this borrow order

claims: AccountInfo<'info>

Token account used by the margin program to track the debt that must be collateralized CHECK: borrower_account

claims_mint: AccountInfo<'info>

Token mint used by the margin program to track the debt that must be collateralized CHECK: in instruction handler

collateral: AccountInfo<'info>

Token account used by the margin program to track the debt that must be collateralized

collateral_mint: AccountInfo<'info>

Token mint used by the margin program to track the debt that must be collateralized

underlying_token_vault: AccountInfo<'info>

The market token vault

underlying_settlement: AccountInfo<'info>

The market token vault

orderbook_mut: OrderbookMut<'info>payer: Signer<'info>

payer for TermLoan initialization

system_program: Program<'info, System>

Solana system program

token_program: Program<'info, Token>

Trait Implementations

Returns the validated accounts struct. What constitutes “valid” is program dependent. However, users of these types should never have to worry about account substitution attacks. For example, if a program expects a Mint account from the SPL token program in a particular field, then it should be impossible for this method to return Ok if any other account type is given–from the SPL token program or elsewhere. Read more
program_id is the currently executing program.
is_signer is given as an optional override for the signer meta field. This covers the edge case when a program-derived-address needs to relay a transaction from a client to another program but sign the transaction before the relay. The client cannot mark the field as a signer, and so we have to override the is_signer meta field given by the client. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.