pub trait GameHandler: Sized + BorshSerialize + BorshDeserialize {
    // Required methods
    fn init_state(
        effect: &mut Effect,
        init_account: InitAccount
    ) -> Result<Self, HandleError>;
    fn handle_event(
        &mut self,
        effect: &mut Effect,
        event: Event
    ) -> Result<(), HandleError>;
}

Required Methods§

source

fn init_state( effect: &mut Effect, init_account: InitAccount ) -> Result<Self, HandleError>

Initialize handler state with on-chain game account data.

source

fn handle_event( &mut self, effect: &mut Effect, event: Event ) -> Result<(), HandleError>

Handle event.

Object Safety§

This trait is not object safe.

Implementors§