2

有几个例子可以包含在运行时模块中声明的自定义 Rust 类型,可以在此处应用 Polkadot Apps 接口。但是我不确定如何编码元组。对于计划在其代码和运行时 API 中使用元组以用于 polkadot-js 的任何其他人来说,情况也是如此。

下面是它在 Substrate Runtime 模块中的声明方式:

// tuple (struct)
pub type Code = u16;
pub type Type = u16;
pub struct Tuple(Code, Type);

// Complex struct using tuple
pub struct Record<T::AccountId,Tuple> {
    pub address: T::AccountId,
    pub tuple_values: Tuple,
}

// Storage
Record get(record):
        map T::AccountId => Option<Record<T::AccountId,Tuple>>;

我假设我会Developer在 Polkadot Apps 设置的选项卡中添加类似的内容,但我不知道这是否是正确的语法。

{
    "Code": "u16",
    "Type": "u16",
    "Tuple": ["Code", "Type"],
    "Record": {
        "address": "AccountId",
        "tuple_values": "Tuple"
    }
}
4

1 回答 1

4
于 2019-10-14T17:34:12.287 回答