langref: improve description of @fieldParentPtr

This commit is contained in:
mlugg 2025-02-01 15:56:40 +00:00
parent 31f353cd92
commit def7e2f20a
No known key found for this signature in database
GPG Key ID: 3F5B7DCCBF4AF02E

View File

@ -4907,7 +4907,12 @@ fn cmpxchgWeakButNotAtomic(comptime T: type, ptr: *T, expected_value: T, new_val
{#header_open|@fieldParentPtr#} {#header_open|@fieldParentPtr#}
<pre>{#syntax#}@fieldParentPtr(comptime field_name: []const u8, field_ptr: *T) anytype{#endsyntax#}</pre> <pre>{#syntax#}@fieldParentPtr(comptime field_name: []const u8, field_ptr: *T) anytype{#endsyntax#}</pre>
<p> <p>
Given a pointer to a field, returns the base pointer of a struct. Given a pointer to a struct field, returns a pointer to the struct containing that field.
The return type (and struct in question) is the inferred result type.
</p>
<p>
If {#syntax#}field_ptr{#endsyntax#} does not point to the {#syntax#}field_name{#endsyntax#} field of an instance of
the result type, and the result type has ill-defined layout, invokes unchecked {#link|Undefined Behavior#}.
</p> </p>
{#header_close#} {#header_close#}