跳到主要内容
版本:3.3.3

Econ Contract

gas.iost​


简介​

质押获取 GAS 相关的合约。包括质押 IOST 获得 GAS,取消质押,转让 GAS。
具体经济模型细节可以参考 GAS经济模型。

基础信息​

contract_idgas.iost
languagenative
version1.0.0

接口描述​

pledge(pledgor, to, amount)​

质押 iost 获得 gas。最小质押数量为 1 iost。

举例​

["user1", "user1", "100"]:user1 给自己质押 100 iost。user1 减少 100 个 iost,并获得 gas。
["user1", "user2", "100"]:user1 给 user2 质押 100 iost。user1 减少 100 个 iost,user2 获得 gas。

参数列表参数类型备注
pledgorstring质押 iost 的账户。调用此接口需要该账户的 "transfer" 权限
tostring获得 gas 的账户
amountstring质押 iost 的数量

unpledge(pledgor, to, amount)​

取消质押,返还 iost。最小取消质押数量为 1 iost。

举例​

["user1", "user1", "100"]:user1 从之前给自己质押的 iost 中,赎回 100 iost。
["user1", "user2", "100"]:user1 从之前给 user2 质押的 iost 中,赎回 100 iost。

参数列表参数类型备注
pledgorstring质押 iost 的账户。调用此接口需要该账户的 "transfer" 权限
tostring获得 gas 的账户
amountstring质押 iost 的数量

ram.iost​


简介​

ram 相关的系统合约。包括 ram 买卖,ram 转让。
具体经济模型细节可以参考 RAM经济模型。
买卖少量 ram 时,用户可以使用 RPC 中的接口 来估算最终的价格。

基础信息​

contract_idram.iost
languagejavascript
version1.0.0

接口描述​

buy(payer, receiver, amount)​

向系统购买 ram。最小购买数量 10 bytes。
合约返回值为花费的 iost 数量。

举例​

["user1","user1",1024]: user1 给自己购买 1024 bytes 的 ram
["user1","user2",1024]: user1 给 user2 购买 1024 bytes 的 ram

参数列表参数类型备注
payerstring购买时支付的账号。调用此接口需要该账户的 "transfer" 权限
receiverstring获得 ram 的账户
amountint购买 RAM 的数量,单位 byte

sell(account, receiver, amount)​

向系统出售未使用 RAM。最小出售数量 10 bytes。
合约返回值为出售得到的 iost 数量。

举例​

["user1","user1",1024]: user1 从自己之前购买但未使用的 ram 中出售 1024 bytes 给系统,自己获得出售得到的 iost 。
["user1","user2",1024]: user1 从自己之前购买但未使用的 ram 中出售 1024 bytes 给系统,user2 获得出售得到的 iost

参数列表参数类型备注
accountstring出售 ram 的账号。调用此接口需要该账户的 "transfer" 权限
receiverstring接收出售所得的账号
amountint出售 ram 的数量,单位 byte

lend(from, to, amount)​

转让 ra,。
只有自己购买的 ram 才可以转让给其他账户。转让来的 ram,不得二次转让出去或者卖回给系统。
最小转让数量 10 bytes。

举例​

["user1","user2",1024]: user1 从自己之前购买但未使用的 ram 中转让 1024 bytes 给 user2

参数列表参数类型备注
fromstring转让出 ram 的账户。调用此接口需要该账户的 "transfer" 权限
tostring接收 ram 的账户
amountint转让 ram 的数量