// SPDX-License-Identifier: BSD-2-Clause // Copyright CM4all GmbH // author: Max Kellermann #pragma once template struct MemberPointerHelper; template struct MemberPointerHelper { using ContainerType = C; using MemberType = M; }; /** * Given a member pointer, this determines the member type. */ template using MemberPointerType = typename MemberPointerHelper::MemberType; /** * Given a member pointer, this determines the container type. */ template using MemberPointerContainerType = typename MemberPointerHelper::ContainerType;