Scala 3 中的巨集

教學

語言
此文件頁面專屬於 Scala 3,且可能涵蓋 Scala 2 中沒有的新概念。除非另有說明,此頁面中的所有程式碼範例都假設您使用 Scala 3。

本教學涵蓋撰寫 Scala 3 中巨集時涉及的所有功能。

Scala 3 的元程式設計 API 分層設計,以逐步支援不同層級的使用案例。每個後續層級都會公開其他抽象概念,並提供更細緻的控制。

  • 作為起點,新的 inline 功能 允許將一些抽象概念(值和方法)標記為靜態可還原。它提供巨集和其他元程式設計工具的進入點。

  • 編譯時期作業 提供其他元程式設計工具,可用於 inline 方法中(例如改善錯誤回報),而無需定義巨集。

  • inline 方法開始,巨集 是明確操作程式的程式。

    • 巨集可以根據 引號表達式高階 API 定義,該 API 允許簡單地建構和解構程式表達式。

    • 巨集也可以根據更低階反射 API 定義,它允許詳細檢查程式。

本教學使用 Scala 3.0.0-RC3 的 API。此修訂版中,API 有許多小變更。

🚧 我們仍在撰寫教學中。你可以 協助我們 🚧

此頁面的貢獻者