CHERIoT RTOS
A compartmentalised RTOS for CHERIoT hardware
Loading...
Searching...
No Matches
ds::pointer::proxy::Proxies Concept Reference

Proxies<P,T> if P is a proxy object for T*-s. More...

#include <pointer.h>

Concept definition

template<typename P, typename T>
concept Proxies = std::same_as<T, typename P::Type> &&
requires(P &proxy, P &proxy2, T *ptr) {
/* Probe for operator=(T*) */
{ proxy = ptr } -> std::same_as<P &>;
/* Probe for operator T*() */
{ ptr == proxy } -> std::same_as<bool>;
/* TODO: How to probe for operator-> ? */
/* Probe for operator==(T*) */
{ proxy == ptr } -> std::same_as<bool>;
/* Probe for operator==(P&) */
{ proxy == proxy2 } -> std::same_as<bool>;
/* Probe for operator<=>(T*) */
{
proxy <=> ptr
} -> std::same_as<std::strong_ordering>;
/* Probe for operator<=>(P) */
{
proxy <=> proxy2
} -> std::same_as<std::strong_ordering>;
}
Proxies<P,T> if P is a proxy object for T*-s.
Definition pointer.h:50

Detailed Description

Proxies<P,T> if P is a proxy object for T*-s.

Definition at line 50 of file pointer.h.