簡體   English   中英

ManuallyDrop ABI 是否保證 repr(透明)?

[英]Is the ManuallyDrop ABI guaranteed to be repr(transparent)?

諾米康說:

代表(透明)

[...] 如果單個字段是 pub,或者如果其布局以散文形式記錄,則此 repr 僅被視為類型的公共 ABI 的一部分。 否則,布局不應被其他板條箱所依賴。

ManuallyDrop<T>repr(transparent) ,但它的單個字段不是pub 它的文檔說:

[...] 這個包裝器是 0 成本的。

ManuallyDrop<T>T進行相同的布局優化。 [...]

這算作在散文中記錄其布局嗎? 假設我可以將 T 轉換或以其他方式轉換(例如指針轉換)為ManuallyDrop<T> T安全?

這實際上剛剛在今天發布的Rust 1.61.0中得到了澄清。 ManuallyDrop的文檔現在指定(添加的文本以粗體突出顯示):

ManuallyDrop<T>保證與T具有相同的布局,並進行與T相同的布局優化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM