pub struct Reporter {
pub community: Pubkey,
pub bump: u8,
pub is_frozen: bool,
pub status: ReporterStatus,
pub role: ReporterRole,
pub pubkey: Pubkey,
pub name: [u8; 32],
pub stake: u64,
pub unlock_epoch: u64,
}Fields§
§community: PubkeyCommunity account, which this reporter belongs to
bump: u8Seed bump for PDA
is_frozen: boolIf this is true, reporter can’t interact with the contract
status: ReporterStatusReporter account status
role: ReporterRoleReporter’s type
pubkey: PubkeyReporter’s wallet account
name: [u8; 32]Short reporter description
stake: u64Current deposited stake
unlock_epoch: u64Reporter can unstake at this epoch (0 if unstaking hasn’t been requested)
Trait Implementations§
Source§impl AccountDeserialize for Reporter
impl AccountDeserialize for Reporter
Source§fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
Deserializes previously initialized account data. Should fail for all
uninitialized accounts, where the bytes are zeroed. Implementations
should be unique to a particular account type so that one can never
successfully deserialize the data of one account type into another.
For example, if the SPL token program were to implement this trait,
it should be impossible to deserialize a
Mint account into a token
Account.Source§fn try_deserialize_unchecked(buf: &mut &[u8]) -> Result<Self>
fn try_deserialize_unchecked(buf: &mut &[u8]) -> Result<Self>
Deserializes account data without checking the account discriminator.
This should only be used on account initialization, when the bytes of
the account are zeroed.
Source§impl AccountSerialize for Reporter
impl AccountSerialize for Reporter
Source§impl BorshDeserialize for Reporter
impl BorshDeserialize for Reporter
Source§impl BorshSerialize for Reporterwhere
Pubkey: BorshSerialize,
u8: BorshSerialize,
bool: BorshSerialize,
ReporterStatus: BorshSerialize,
ReporterRole: BorshSerialize,
[u8; 32]: BorshSerialize,
u64: BorshSerialize,
impl BorshSerialize for Reporterwhere
Pubkey: BorshSerialize,
u8: BorshSerialize,
bool: BorshSerialize,
ReporterStatus: BorshSerialize,
ReporterRole: BorshSerialize,
[u8; 32]: BorshSerialize,
u64: BorshSerialize,
Source§impl Discriminator for Reporter
impl Discriminator for Reporter
const DISCRIMINATOR: [u8; 8]
fn discriminator() -> [u8; 8]
Auto Trait Implementations§
impl Freeze for Reporter
impl RefUnwindSafe for Reporter
impl Send for Reporter
impl Sync for Reporter
impl Unpin for Reporter
impl UnwindSafe for Reporter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more