跳转到内容

Aptos 上的模块

Aptos 允许在中进行无需许可的模块发布, 同时也支持对设置了适当兼容性策略的模块进行升级

模块包含多个结构体和函数,这一点与 Rust 类似。

在包发布时,需要遵守以下约束:

  • 结构体和公共函数签名都以不可变的方式发布。
  • init_module 函数在模块初始化中扮演着关键角色:
    • 当首次发布模块时(即该模块在链上不存在),VM 将会查找并执行 init_module(account: &signer) 函数。
    • 当升级已经存在于链上的模块时,init_module 函数将不会被调用。
    • 发布模块的账户的签名者会被传入 init_module 函数。
    • 此函数必须是私有的,且不能返回任何值。
    • init_module 函数通常用于初始化模块特定的数据结构或设置初始状态。