[][src]Trait ink_storage::traits::PackedLayout

pub trait PackedLayout: SpreadLayout + Encode + Decode {
    fn pull_packed(&mut self, at: &Key);
fn push_packed(&self, at: &Key);
fn clear_packed(&self, at: &Key); }

Types that can be stored to and loaded from a single contract storage cell.

Required methods

fn pull_packed(&mut self, at: &Key)

Indicates to self that is has just been pulled from the storage.

Note

Most types will have to implement a simple forwarding to their fields. However, some types such as storage::Box are required to perform some special handling upon receiving this signal.

fn push_packed(&self, at: &Key)

Indicates to self that it is about to be pushed to contract storage.

Note

Most types will have to implement a simple forwarding to their fields. However, some types such as storage::Box are required to perform some special handling upon receiving this signal.

fn clear_packed(&self, at: &Key)

Indicates to self that it is about to be cleared from contract storage.

Note

Most types will have to implement a simple forwarding to their fields. However, some types such as storage::Box are required to perform some special handling upon receiving this signal.

Loading content...

Implementations on Foreign Types

impl<T> PackedLayout for [T; 1] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 2] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 3] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 4] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 5] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 6] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 7] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 8] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 9] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 10] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 11] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 12] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 13] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 14] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 15] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 16] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 17] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 18] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 19] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 20] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 21] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 22] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 23] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 24] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 25] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 26] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 27] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 28] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 29] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 30] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 31] where
    T: PackedLayout
[src]

impl<T> PackedLayout for [T; 32] where
    T: PackedLayout
[src]

impl<K, V> PackedLayout for StdBTreeMap<K, V> where
    K: PackedLayout + Ord,
    V: PackedLayout
[src]

impl<T> PackedLayout for StdBTreeSet<T> where
    T: PackedLayout + Ord
[src]

impl<T> PackedLayout for StdBinaryHeap<T> where
    T: PackedLayout + Ord
[src]

impl<T> PackedLayout for Vec<T> where
    T: PackedLayout
[src]

impl<T> PackedLayout for StdLinkedList<T> where
    T: PackedLayout
[src]

impl<T> PackedLayout for StdVecDeque<T> where
    T: PackedLayout
[src]

impl PackedLayout for Key[src]

impl PackedLayout for Hash[src]

impl PackedLayout for AccountId[src]

impl PackedLayout for ()[src]

impl PackedLayout for String[src]

impl PackedLayout for bool[src]

impl PackedLayout for u8[src]

impl PackedLayout for u16[src]

impl PackedLayout for u32[src]

impl PackedLayout for u64[src]

impl PackedLayout for u128[src]

impl PackedLayout for i8[src]

impl PackedLayout for i16[src]

impl PackedLayout for i32[src]

impl PackedLayout for i64[src]

impl PackedLayout for i128[src]

impl<T> PackedLayout for Option<T> where
    T: PackedLayout
[src]

impl<T, E> PackedLayout for Result<T, E> where
    T: PackedLayout,
    E: PackedLayout
[src]

impl<T> PackedLayout for Box<T> where
    T: PackedLayout
[src]

impl<A> PackedLayout for (A,) where
    A: PackedLayout
[src]

impl<A, B> PackedLayout for (A, B) where
    A: PackedLayout,
    B: PackedLayout
[src]

impl<A, B, C> PackedLayout for (A, B, C) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout
[src]

impl<A, B, C, D> PackedLayout for (A, B, C, D) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout
[src]

impl<A, B, C, D, E> PackedLayout for (A, B, C, D, E) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout,
    E: PackedLayout
[src]

impl<A, B, C, D, E, F> PackedLayout for (A, B, C, D, E, F) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout,
    E: PackedLayout,
    F: PackedLayout
[src]

impl<A, B, C, D, E, F, G> PackedLayout for (A, B, C, D, E, F, G) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout,
    E: PackedLayout,
    F: PackedLayout,
    G: PackedLayout
[src]

impl<A, B, C, D, E, F, G, H> PackedLayout for (A, B, C, D, E, F, G, H) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout,
    E: PackedLayout,
    F: PackedLayout,
    G: PackedLayout,
    H: PackedLayout
[src]

impl<A, B, C, D, E, F, G, H, I> PackedLayout for (A, B, C, D, E, F, G, H, I) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout,
    E: PackedLayout,
    F: PackedLayout,
    G: PackedLayout,
    H: PackedLayout,
    I: PackedLayout
[src]

impl<A, B, C, D, E, F, G, H, I, J> PackedLayout for (A, B, C, D, E, F, G, H, I, J) where
    A: PackedLayout,
    B: PackedLayout,
    C: PackedLayout,
    D: PackedLayout,
    E: PackedLayout,
    F: PackedLayout,
    G: PackedLayout,
    H: PackedLayout,
    I: PackedLayout,
    J: PackedLayout
[src]

Loading content...

Implementors

impl<T> PackedLayout for Entry<T> where
    T: PackedLayout
[src]

impl<T> PackedLayout for StorageBox<T> where
    T: SpreadLayout
[src]

impl<T> PackedLayout for Pack<T> where
    T: PackedLayout
[src]

Loading content...