関数 without_provenance_mut

Since 1.84.0 (const: 1.84.0) · Source
pub const fn without_provenance_mut<T>(addr: usize) -> *mut T
説明を展開

与えられたアドレスから起源なしでポインタを作成する。

これは ptr::null_mut().with_addr(addr) と等価である。

起源がないため、このポインタは実際の割り当てと関連付けられていない。そのような起源のないポインタは (適切にアラインされていれば) ゼロサイズのメモリアクセスに使えるが、起源のないポインタでの非ゼロサイズのメモリアクセスは UB である。起源のないポインタは usize アドレスの変装にすぎない。

これは addr as *mut T と異なる。後者は以前に公開した起源を拾ってポインタを作成する。その操作のさらなる詳細は with_exposed_provenance_mut を見よ。

これは厳密な起源の API である。