CHERIoT RTOS
A compartmentalised RTOS for CHERIoT hardware
Loading...
Searching...
No Matches
Type-qualifying member accessor macros
Collaboration diagram for Type-qualifying member accessor macros:

Macros

#define BITPACK_MEMBER_DECLTYPE(b, T)
 A convenience macro that presumes the type T is defined within the Bitpack b and finds such a field's proxy.
#define BITPACK_MEMBER_DEPENDENT(b, T)
 Like BITPACK_MEMBER_DECLTYPE, but with additional an "typename" keyword so we can use a dependently-typed bitpack b (say, the type of b is auto or, more generally, involves a template argument).

Detailed Description

Macro Definition Documentation

◆ BITPACK_MEMBER_DECLTYPE

#define BITPACK_MEMBER_DECLTYPE ( b,
T )
Value:
(b).template member<std::remove_reference_t<decltype(b)>::T>()

A convenience macro that presumes the type T is defined within the Bitpack b and finds such a field's proxy.

There is no BITPACK_MEMBER_TYPE(b, T) analogue, because that's just b.member<T>().

Definition at line 1053 of file bitpack.hh.

◆ BITPACK_MEMBER_DEPENDENT

#define BITPACK_MEMBER_DEPENDENT ( b,
T )
Value:
(b).template member<typename std::remove_reference_t<decltype(b)>::T>()

Like BITPACK_MEMBER_DECLTYPE, but with additional an "typename" keyword so we can use a dependently-typed bitpack b (say, the type of b is auto or, more generally, involves a template argument).

Definition at line 1061 of file bitpack.hh.