pub trait Auction<AccountId, BlockNumber> {
    type AuctionId: FullCodec + Default + Copy + Eq + PartialEq + MaybeSerializeDeserialize + Bounded + Debug;
    type Balance: AtLeast32Bit + FullCodec + Copy + MaybeSerializeDeserialize + Debug + Default;

    fn auction_info(
        id: Self::AuctionId
    ) -> Option<AuctionInfo<AccountId, Self::Balance, BlockNumber>>; fn update_auction(
        id: Self::AuctionId,
        info: AuctionInfo<AccountId, Self::Balance, BlockNumber>
    ) -> DispatchResult; fn new_auction(
        start: BlockNumber,
        end: Option<BlockNumber>
    ) -> Result<Self::AuctionId, DispatchError>; fn remove_auction(id: Self::AuctionId); }
Expand description

Abstraction over a simple auction system.

Required Associated Types§

Required Methods§

The auction info of id

Update the auction info of id with info

Create new auction with specific startblock and endblock, return the id of the auction

Remove auction by id

Implementors§