Fuchsia Rust Crate

本文件將說明最常見的 Fuchsia Rust Crate。如要查看所有可用 Rust Crate 的完整清單,請參閱 Rust Crate 的完整清單

一般

  • fuchsia

    用於建立 Fuchsia 元件和測試的巨集。這些巨集適用於 Fuchsia,也適用於主機,但有某些限制 (會在適用的地方說明)。

  • fuchsia_component

    用於實作 Fuchsia 元件的支援程式庫。

  • fuchsia_component_test

    Realm Builder 程式庫可讓您在執行階段建構 Realm 和模擬個別測試案例的元件,方便進行元件的整合測試。如要進一步瞭解如何使用這個程式庫,請參閱 Realm Builder

  • fuchsia_async/

    未來執行緒和非同步原始碼 (管道、Socket、Fifo 等)。這個 Crate 適用於 Fuchsia 和主機作業系統,可讓您使用 Overnet 進行 RCS 和 ffx。

  • async_utils

    提供用於處理非同步程式碼的工具。

  • async_helpers

    這個程式庫包含輔助函式箱,可處理掛起的 get 等事項。

  • zx

    Zircon 核心系統呼叫的 Rust 語言繫結。

  • fdio

    fdio 程式庫的包裝函式。

  • fuchsia_runtime

    針對 Fuchsia 專屬 libc 功能的型別安全繫結。這個 Crate 是 fuchsia-zircon Crate 之上的最小擴充功能,可提供 Zircon 核心的系統呼叫繫結,但不依賴 libc 的功能。

  • mapped_vmo

    針對對應至記憶體的 Zircon VMO 物件提供便利的 Crate。

  • mem_util

    用於處理 fuchsia.mem FIDL 程式庫的公用程式。這個 Crate 並未廣泛使用。

  • shared_buffer

    用於在互不信任的程序之間共用的記憶體上安全運作的一組公用程式。

  • fidl

    FIDL 繫結的程式庫和執行階段。如要進一步瞭解 FIDL,請參閱「FIDL 總覽

  • 蠅量級

    實作 flyweight 模式的類型,可用於重複使用物件配置。

套件

  • fuchsia_archive

    使用 Fuchsia 封存檔 (FAR)

  • fuchsia_pkg

    可讓您使用 Fuchsia 套件的程式庫,這些套件是階層式檔案集合,可為 Fuchsia 系統提供一或多個程式、元件或服務。

  • fuchsia-merkle

    使用 Merkle 樹保護及驗證資料 Blob

測試

  • diagnostics_log

    將 Rust 介面連結至 Fuchsia 記錄系統。這個程式庫並非 Fuchsia 專用,可在主機上使用。

  • diagnostics_reader

    可讓您讀取指標和記錄的工具。這對建立測試相當實用。

  • fuchsia_trace

    安全的 Rust 介面,可用於 Fuchsia 的追蹤介面。

  • fuchsia_criterion

    圍繞 Criterion 基準測試套件的薄型包裝函式。這會根據標準基準產生基礎架構的基準指標。

  • fuchsiaperf

    這個程式庫會定義基準測試指標的 JSON 結構定義。

  • fuchsia_inspect

    Fuchsia 中的元件可能會公開自身的結構化資訊,且符合 Inspect API。這個 Crate 是用於在 Rust 元件中寫入檢查資料的核心程式庫。如需開始使用 inspect 的完整指南,請參閱程式碼研究室

  • fuchsia_inspect_contrib

    這個程式庫可讓用戶端為檢查程式庫提供貢獻。

圖形

儲存空間

  • storage

    在 Fuchsia 平台上提供檔案系統的繫結和通訊協定

    用來建立「偽」檔案系統的程式庫。這些檔案系統由內部程序回呼提供支援。例如元件設定、偵錯資訊或統計資料。

    用於存取檔案系統目錄的程式庫。

    我們使用 Fxfs 的程式庫,這是 Fuchsia 的記錄結構檔案系統。

  • fuchsia-fs

    用於 fuchsia.io 作業的包裝函式程式庫,例如讀取及寫入檔案、讀取目錄項目和監控目錄。

網路

  • fuchsia_hyper

    這個程式庫可讓您建立與 Fuchsia 相容的超級用戶端,用於提出 HTTP 要求。

  • fuchsia_bluetooth

    用於藍牙開發作業的工具。

其他

  • mundane

    由 BoringSSL 支援的 Rust 加密編譯程式庫