1 个不稳定版本
0.1.0 | 2024 年 6 月 14 日 |
---|
#24 in #programmatically
27KB
615 行
ICP 到 Cycles 转换库
免责声明
此库应在 canister 环境中使用
概述
此 Rust 库提供了一个将 ICP 代币程序性地转换为 cycles 的函数。这个功能对于需要使用 Rust CDK 动态管理和部署 canisters 的场景至关重要。
用例
一个主要用例是在线构建用户 canisters。在这种情况下,您需要程序性地将 cycles 添加到 canisters 并自动部署它们。由于 dfx
CLI 工具是为手动交互设计的,因此它不适用于此场景。我们的库提供了一个将 ICP 代币转换为 cycles 的程序化解决方案。
功能
mint_cycles
该库包含一个函数:mint_cycles
。此函数将 canister 持有的 ICP 代币转换为 cycles。
函数签名
fn mint_cycles(amount: Tokens)
参数
amount
:此参数类型为 Tokens,定义为
pub struct Tokens {
e8s: u64,
}
有关详细信息,请参阅 ic_ledger_types::Tokens
。
假设
调用 mint_cycles 的 canister 持有一些 ICP 代币。
Canisters 可以持有和转移 ICP 代币。在调用 mint_cycles 之前,您可以使用选择的钱包或任何其他方法将 ICP 代币充值到主 canister。
此主 canister 可用于自动构建和部署其他 canisters。
示例工作流程
- 为主 canister 充值:将 ICP 代币转移到您的主 canister。
- 将代币转换为 cycles:使用要转换的代币数量调用 mint_cycles。
- 部署 canisters:使用 cycles 程序性地构建和部署其他 canisters。
源代码
有关更多详细信息以及如何贡献,请参阅源代码。
此库旨在简化将 ICP 代币转换为 cycles 的过程,以实现动态 canister 管理和部署。我们希望这有所帮助,并期待您的贡献。
依赖项
~6.5MB
~127K SLoC