pub trait WritableAccount: ReadableAccount {
// Required methods
fn set_lamports(&mut self, lamports: u64);
fn data_as_mut_slice(&mut self) -> &mut [u8] ⓘ;
fn set_owner(&mut self, owner: Pubkey);
fn copy_into_owner_from_slice(&mut self, source: &[u8]);
fn set_executable(&mut self, executable: bool);
fn set_rent_epoch(&mut self, epoch: Epoch);
// Provided methods
fn checked_add_lamports(
&mut self,
lamports: u64,
) -> Result<(), LamportsError> { ... }
fn checked_sub_lamports(
&mut self,
lamports: u64,
) -> Result<(), LamportsError> { ... }
fn saturating_add_lamports(&mut self, lamports: u64) { ... }
fn saturating_sub_lamports(&mut self, lamports: u64) { ... }
}Expand description
Writable access to account state.
Required Methods§
Sourcefn set_lamports(&mut self, lamports: u64)
fn set_lamports(&mut self, lamports: u64)
Replaces the lamport balance.
Sourcefn data_as_mut_slice(&mut self) -> &mut [u8] ⓘ
fn data_as_mut_slice(&mut self) -> &mut [u8] ⓘ
Returns mutable access to the account data.
Sourcefn copy_into_owner_from_slice(&mut self, source: &[u8])
fn copy_into_owner_from_slice(&mut self, source: &[u8])
Copies 32 raw bytes into the owner pubkey.
Sourcefn set_executable(&mut self, executable: bool)
fn set_executable(&mut self, executable: bool)
Sets the executable flag.
Sourcefn set_rent_epoch(&mut self, epoch: Epoch)
fn set_rent_epoch(&mut self, epoch: Epoch)
Sets the rent epoch view if the implementation stores one.
Implementations that do not store rent epoch may ignore this.
Provided Methods§
Sourcefn checked_add_lamports(&mut self, lamports: u64) -> Result<(), LamportsError>
fn checked_add_lamports(&mut self, lamports: u64) -> Result<(), LamportsError>
Adds lamports or returns an overflow error.
Sourcefn checked_sub_lamports(&mut self, lamports: u64) -> Result<(), LamportsError>
fn checked_sub_lamports(&mut self, lamports: u64) -> Result<(), LamportsError>
Subtracts lamports or returns an underflow error.
Sourcefn saturating_add_lamports(&mut self, lamports: u64)
fn saturating_add_lamports(&mut self, lamports: u64)
Adds lamports and saturates on overflow.
Sourcefn saturating_sub_lamports(&mut self, lamports: u64)
fn saturating_sub_lamports(&mut self, lamports: u64)
Subtracts lamports and saturates on underflow.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".