ZXFoundation™ 26h2
Loading...
Searching...
No Matches
lib.container_of Module Reference

Functions

template<typename Owner, typename Member, Member Owner::* member>
auto lib::container_of (const Member *ptr) noexcept -> const Owner *
 Const-qualified overload of container_of.
template<typename Owner, typename Member, Member Owner::* member>
auto lib::container_of (Member *ptr) noexcept -> Owner *
 Recover the enclosing object from a pointer to one of its members.
template<typename Outer, typename Inner, typename Field, Inner Outer::* outer_member, Field Inner::* inner_member>
auto lib::container_of_anchor (Field *ptr) noexcept -> Outer *
 Two-level container_of: Outer::outer_member is an Inner struct that itself contains inner_member of type Field. Walks back from ptr (a Field*) to the enclosing Outer instance.

Files

file  lib/container_of.cxxm