Struct solana_sdk::account::AccountSharedData[][src]

pub struct AccountSharedData {
    pub lamports: u64,
    pub data: Vec<u8>,
    pub owner: Pubkey,
    pub executable: bool,
    pub rent_epoch: Epoch,
}

An Account with data that is stored on chain This will become a new in-memory representation of the ‘Account’ struct data. The existing ‘Account’ structure cannot easily change due to downstream projects. This struct will shortly rely on something like the ReadableAccount trait for access to the fields.

Fields

lamports: u64

lamports in the account

data: Vec<u8>

data held in this account

owner: Pubkey

the program that owns this account. If executable, the program that loads this account.

executable: bool

this account’s data contains a loaded program (and is now read-only)

rent_epoch: Epoch

the epoch at which this account will next owe rent

Implementations

impl AccountSharedData[src]

pub fn set_data(&mut self, data: Vec<u8>)[src]

pub fn new(lamports: u64, space: usize, owner: &Pubkey) -> Self[src]

pub fn new_ref(lamports: u64, space: usize, owner: &Pubkey) -> Rc<RefCell<Self>>[src]

pub fn new_data<T: Serialize>(
    lamports: u64,
    state: &T,
    owner: &Pubkey
) -> Result<Self, Error>
[src]

pub fn new_ref_data<T: Serialize>(
    lamports: u64,
    state: &T,
    owner: &Pubkey
) -> Result<RefCell<Self>, Error>
[src]

pub fn new_data_with_space<T: Serialize>(
    lamports: u64,
    state: &T,
    space: usize,
    owner: &Pubkey
) -> Result<Self, Error>
[src]

pub fn new_ref_data_with_space<T: Serialize>(
    lamports: u64,
    state: &T,
    space: usize,
    owner: &Pubkey
) -> Result<RefCell<Self>, Error>
[src]

pub fn deserialize_data<T: DeserializeOwned>(&self) -> Result<T, Error>[src]

pub fn serialize_data<T: Serialize>(&mut self, state: &T) -> Result<(), Error>[src]

Trait Implementations

impl AbiExample for AccountSharedData[src]

impl Clone for AccountSharedData[src]

impl Debug for AccountSharedData[src]

impl Default for AccountSharedData[src]

impl<'de> Deserialize<'de> for AccountSharedData[src]

impl Eq for AccountSharedData[src]

impl From<Account> for AccountSharedData[src]

impl From<AccountSharedData> for Account[src]

impl PartialEq<AccountSharedData> for AccountSharedData[src]

impl ReadableAccount for AccountSharedData[src]

impl Serialize for AccountSharedData[src]

impl<T> StateMut<T> for AccountSharedData where
    T: Serialize + DeserializeOwned
[src]

impl StructuralEq for AccountSharedData[src]

impl StructuralPartialEq for AccountSharedData[src]

impl WritableAccount for AccountSharedData[src]

Auto Trait Implementations

Blanket Implementations

impl<T> AbiEnumVisitor for T where
    T: Serialize + ?Sized
[src]

impl<T> AbiEnumVisitor for T where
    T: Serialize + AbiExample + ?Sized
[src]

impl<T> AbiExample for T[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,