Pigweed
 
Loading...
Searching...
No Matches
pw::allocator::Capabilities Class Reference

#include <capability.h>

Public Member Functions

constexpr Capabilities (uint32_t capabilities)
 
constexpr bool has (Capability capability) const
 
constexpr uint32_t get () const
 

Detailed Description

A collection of Capabilitys.

Concrete allocators should declare a constant set of capabilities, and pass it to the Allocator constructor.

class MyConcreteAllocator : public Allocator {
public:
static constexpr Capabilities kCapabilities = kCapability1 | kCapability2;
MyConcreteAllocator() : Allocator(kCapabilities) {}
};
Definition: allocator.h:34
Definition: capability.h:62

Forwarding allocators should pass the underlying allocator's capabilities, potentially with modifications:

class MyForwardingAllocator : public Allocator {
public:
MyForwardingAllocator(Allocator& allocator)
: Allocator(allocator.capabilities() | kCapability3),
allocator_(allocator) {}
};

The documentation for this class was generated from the following file: