PositionMut

Trait PositionMut 

Source
pub trait PositionMut<const DECIMALS: u8>: Position<DECIMALS> + PositionStateMut<DECIMALS> {
    // Required methods
    fn market_mut(&mut self) -> &mut Self::Market;
    fn on_increased(&mut self) -> Result<(), Error>;
    fn on_decreased(&mut self) -> Result<(), Error>;
    fn on_swapped(
        &mut self,
        ty: DecreasePositionSwapType,
        report: &SwapReport<Self::Num, <Self::Num as Unsigned>::Signed>,
    ) -> Result<(), Error>;
    fn on_swap_error(
        &mut self,
        ty: DecreasePositionSwapType,
        error: Error,
    ) -> Result<(), Error>;
}
Expand description

Position with mutable access.

Required Methods§

Source

fn market_mut(&mut self) -> &mut Self::Market

Get a mutable reference to the market.

Source

fn on_increased(&mut self) -> Result<(), Error>

Increased callback.

Source

fn on_decreased(&mut self) -> Result<(), Error>

Decreased callback.

Source

fn on_swapped( &mut self, ty: DecreasePositionSwapType, report: &SwapReport<Self::Num, <Self::Num as Unsigned>::Signed>, ) -> Result<(), Error>

Swapped callback.

Source

fn on_swap_error( &mut self, ty: DecreasePositionSwapType, error: Error, ) -> Result<(), Error>

Handle swap error.

Implementations on Foreign Types§

Source§

impl<const DECIMALS: u8, P> PositionMut<DECIMALS> for &mut P
where P: PositionMut<DECIMALS>,

Source§

fn market_mut(&mut self) -> &mut <&mut P as Position<DECIMALS>>::Market

Source§

fn on_increased(&mut self) -> Result<(), Error>

Source§

fn on_decreased(&mut self) -> Result<(), Error>

Source§

fn on_swapped( &mut self, ty: DecreasePositionSwapType, report: &SwapReport<<&mut P as PositionState<DECIMALS>>::Num, <<&mut P as PositionState<DECIMALS>>::Num as Unsigned>::Signed>, ) -> Result<(), Error>

Source§

fn on_swap_error( &mut self, ty: DecreasePositionSwapType, error: Error, ) -> Result<(), Error>

Implementors§

Source§

impl PositionMut<gmsol_programs::::model::position::{impl#6}::{constant#0}> for PositionModel