WPILibC++ 2025.3.1
Loading...
Searching...
No Matches
wpi::memory::detail::free_memory_list Class Reference

#include <wpi/memory/detail/free_list.hpp>

Public Member Functions

 free_memory_list (std::size_t node_size) noexcept
 
 free_memory_list (std::size_t node_size, void *mem, std::size_t size) noexcept
 
 free_memory_list (free_memory_list &&other) noexcept
 
 ~free_memory_list () noexcept=default
 
free_memory_listoperator= (free_memory_list &&other) noexcept
 
void insert (void *mem, std::size_t size) noexcept
 
std::size_t usable_size (std::size_t size) const noexcept
 
void * allocate () noexcept
 
void * allocate (std::size_t n) noexcept
 
void deallocate (void *ptr) noexcept
 
void deallocate (void *ptr, std::size_t n) noexcept
 
std::size_t node_size () const noexcept
 
std::size_t alignment () const noexcept
 
std::size_t capacity () const noexcept
 
bool empty () const noexcept
 

Static Public Member Functions

static constexpr std::size_t min_block_size (std::size_t node_size, std::size_t number_of_nodes)
 

Static Public Attributes

static constexpr auto min_element_size = sizeof(char*)
 
static constexpr auto min_element_alignment = alignof(char*)
 

Friends

void swap (free_memory_list &a, free_memory_list &b)
 

Constructor & Destructor Documentation

◆ free_memory_list() [1/3]

wpi::memory::detail::free_memory_list::free_memory_list ( std::size_t node_size)
noexcept

◆ free_memory_list() [2/3]

wpi::memory::detail::free_memory_list::free_memory_list ( std::size_t node_size,
void * mem,
std::size_t size )
noexcept

◆ free_memory_list() [3/3]

wpi::memory::detail::free_memory_list::free_memory_list ( free_memory_list && other)
noexcept

◆ ~free_memory_list()

wpi::memory::detail::free_memory_list::~free_memory_list ( )
defaultnoexcept

Member Function Documentation

◆ alignment()

std::size_t wpi::memory::detail::free_memory_list::alignment ( ) const
noexcept

◆ allocate() [1/2]

void * wpi::memory::detail::free_memory_list::allocate ( )
noexcept

◆ allocate() [2/2]

void * wpi::memory::detail::free_memory_list::allocate ( std::size_t n)
noexcept

◆ capacity()

std::size_t wpi::memory::detail::free_memory_list::capacity ( ) const
inlinenoexcept

◆ deallocate() [1/2]

void wpi::memory::detail::free_memory_list::deallocate ( void * ptr)
noexcept

◆ deallocate() [2/2]

void wpi::memory::detail::free_memory_list::deallocate ( void * ptr,
std::size_t n )
noexcept

◆ empty()

bool wpi::memory::detail::free_memory_list::empty ( ) const
inlinenoexcept

◆ insert()

void wpi::memory::detail::free_memory_list::insert ( void * mem,
std::size_t size )
noexcept

◆ min_block_size()

static constexpr std::size_t wpi::memory::detail::free_memory_list::min_block_size ( std::size_t node_size,
std::size_t number_of_nodes )
inlinestaticconstexpr

◆ node_size()

std::size_t wpi::memory::detail::free_memory_list::node_size ( ) const
inlinenoexcept

◆ operator=()

free_memory_list & wpi::memory::detail::free_memory_list::operator= ( free_memory_list && other)
noexcept

◆ usable_size()

std::size_t wpi::memory::detail::free_memory_list::usable_size ( std::size_t size) const
inlinenoexcept

Friends And Related Symbol Documentation

◆ swap

void swap ( free_memory_list & a,
free_memory_list & b )
friend

Member Data Documentation

◆ min_element_alignment

auto wpi::memory::detail::free_memory_list::min_element_alignment = alignof(char*)
staticconstexpr

◆ min_element_size

auto wpi::memory::detail::free_memory_list::min_element_size = sizeof(char*)
staticconstexpr

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