Trait SpreadLayout

Source
pub trait SpreadLayout {
    // Required methods
    fn read_ledger(key: &[u8], prefix: &[u8]) -> Self;
    fn write_ledger(&self, key: &[u8], prefix: &[u8]);
}
Expand description

Types that can be stored to and loaded from the contract storage. 合约中的每一个属性都会生成下面的接口,有了这个接口,各个属性便可以单独序列化到db中

Required Methods§

Source

fn read_ledger(key: &[u8], prefix: &[u8]) -> Self

从账本读数据接口

Source

fn write_ledger(&self, key: &[u8], prefix: &[u8])

写入账本数据接口,key为属性名

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<K, V> SpreadLayout for HyperMap<K, V>
where K: Ord + Hash + Encode + Decode, V: Encode + Decode,

Source§

impl<T> SpreadLayout for HyperList<T>
where T: Encode + Decode,

Source§

impl<T> SpreadLayout for T
where T: Encode + Decode + Default,