熱門話題
#
Bonk 生態迷因幣展現強韌勢頭
#
有消息稱 Pump.fun 計劃 40 億估值發幣,引發市場猜測
#
Solana 新代幣發射平臺 Boop.Fun 風頭正勁
修訂 proc macros - 為 @anchorlang 添加了帳戶版本控制。
標記為 #[account(versioned)] 的帳戶現在可以隨著時間演變其架構。字段使用 #[added(vN)] 來指定它們何時被引入。
三種初始化模式:
- #[added(v2)] → Default::default()
- #[added(v2, init_to = expr)] → 靜態編譯時值
- #[added(v2, init_from = "authority")] → 從上下文進行運行時初始化
優勢 - 無需破壞數據的架構演變。零遷移代碼。自動從上下文初始化字段。跨版本的向後兼容性。
代碼將在經過幾輪測試後很快推出。
@jacobvcreech 先生,您認為這在官方 anchor 中會有用嗎?
這是一個很棒的學習經歷。在修訂 proc macros 的同時,也理解了 #anchor 中帳戶宏的擴展及其各種限制。

熱門
排行
收藏
