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: Pubkey
Community account, which this reporter belongs to
bump: u8
Seed bump for PDA
is_frozen: bool
If this is true, reporter can’t interact with the contract
status: ReporterStatus
Reporter account status
role: ReporterRole
Reporter’s type
pubkey: Pubkey
Reporter’s wallet account
name: [u8; 32]
Short reporter description
stake: u64
Current deposited stake
unlock_epoch: u64
Reporter 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