pub fn liquidate_obligation(
        &self,
        obligation: &Obligation,
        liquidate_amount: u64,
        liquidity_token_mint: &Pubkey,
        token_converter: impl TokenConverter,
    ) -> Result<LiquidateResult, ProgramError> {
        Self::_liquidate_obligation(
            obligation,
            liquidate_amount,
            liquidity_token_mint,
            self.collateral_exchange_rate()?,
            &self.config,
            token_converter,
        )
    }
/// Liquidate part of an unhealthy obligation
Liquidate part of an unhealthy obligation
Liquidate part of an unhealthy obligation
pub fn liquidate_obligation(
        &self,
        obligation: &Obligation,
        liquidate_amount: u64,
        liquidity_token_mint: &Pubkey,
        token_converter: impl TokenConverter,
    ) -> Result<LiquidateResult, ProgramError> {
        Self::_liquidate_obligation(
            obligation,
            liquidate_amount,
            liquidity_token_mint,
            self.collateral_exchange_rate()?,
            &self.config,
            token_converter,
        )
    }
pub fn liquidate_obligation ( & self , obligation : & Obligation , liquidate_amount : u64 , liquidity_token_mint : & Pubkey , token_converter : impl TokenConverter , ) -> Result < LiquidateResult , ProgramError > { Self :: _liquidate_obligation ( obligation , liquidate_amount , liquidity_token_mint , self . collateral_exchange_rate ( ) ? , & self . config , token_converter , ) }
Liquidate part of an unhealthy obligation
Liquidate part of an unhealthy obligation
&self
obligation
&Obligation
liquidate_amount
u64
liquidity_token_mint
&Pubkey
token_converter
impl TokenConverter