iT邦幫忙

2022 iThome 鐵人賽

DAY 5
0
Web 3

Smart-Contract Language: Move系列 第 22

Day 22 Advanced Topics: Package

  • 分享至 

  • xImage
  •  

package 讓開發者更輕鬆地重用代碼並在項目之間共享:

  • 定義一個包含移動代碼的包
  • 通過命名地址參數化包
  • 在其他 Move 代碼中導入和使用包並實例化命名地址
  • 構建包並從包中生成相關的編譯工件
  • 使用圍繞已編譯 Move 工件的通用接口

schema

一個 Move 的 package 包必須有下面結構才行:

a_move_package
├── Move.toml      (required)
├── sources        (required)
├── examples       (optional, test & dev mode)
├── scripts        (optional)
├── doc_templates  (optional)
└── tests          (optional, test mode)

required 必須存在標記的目錄才能將該目錄視為 Move 包並進行編譯。可以存在可選目錄,如果存在,將包含在編譯過程中。

sources目錄可以包含 Move 模塊和 Move 腳本(transaction scripts 和包含腳本函數的模塊)。該目錄可以包含僅用於開發和/或教程目的的附加代碼,這些代碼在外部模式,編譯時將不包含在內。

scripts支持目錄,因此如果 package 作者需要,可以將 transaction script 與模塊分開。如果該scripts 目錄存在,則將始終包含該目錄以進行編譯並使用doc_templates目錄中存在的任何文檔模板構建文檔。

由於 package 目錄內容較多,筆者分兩篇來介紹。本篇先從 package 內容架構出發,下一篇會個別介紹用法。讓我們 Move to Day 23


上一篇
Day 21 Advanced Topics: Uses and Aliases
下一篇
Day 23 Advanced Topics: Package part 2
系列文
Smart-Contract Language: Move30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言