MySQL 8.0.30
Source Code Documentation
ut::detail::Large_alloc_< Impl > Struct Template Reference

Small wrapper which utilizes SFINAE to dispatch the call to appropriate aligned allocator implementation. More...

#include <large_page_alloc.h>

Static Public Member Functions

template<typename T = Impl>
static std::enable_if< T::is_pfs_instrumented_v, void * >::type alloc (size_t size, PSI_memory_key key)
 
template<typename T = Impl>
static std::enable_if<!T::is_pfs_instrumented_v, void * >::type alloc (size_t size, PSI_memory_key)
 
static bool free (void *ptr)
 
static size_t datalen (void *ptr)
 
static Page_type page_type (void *ptr)
 
static allocation_low_level_info low_level_info (void *ptr)
 

Detailed Description

template<typename Impl>
struct ut::detail::Large_alloc_< Impl >

Small wrapper which utilizes SFINAE to dispatch the call to appropriate aligned allocator implementation.

Member Function Documentation

◆ alloc() [1/2]

template<typename Impl >
template<typename T = Impl>
static std::enable_if< T::is_pfs_instrumented_v, void * >::type ut::detail::Large_alloc_< Impl >::alloc ( size_t  size,
PSI_memory_key  key 
)
inlinestatic

◆ alloc() [2/2]

template<typename Impl >
template<typename T = Impl>
static std::enable_if<!T::is_pfs_instrumented_v, void * >::type ut::detail::Large_alloc_< Impl >::alloc ( size_t  size,
PSI_memory_key   
)
inlinestatic

◆ datalen()

template<typename Impl >
static size_t ut::detail::Large_alloc_< Impl >::datalen ( void *  ptr)
inlinestatic

◆ free()

template<typename Impl >
static bool ut::detail::Large_alloc_< Impl >::free ( void *  ptr)
inlinestatic

◆ low_level_info()

template<typename Impl >
static allocation_low_level_info ut::detail::Large_alloc_< Impl >::low_level_info ( void *  ptr)
inlinestatic

◆ page_type()

template<typename Impl >
static Page_type ut::detail::Large_alloc_< Impl >::page_type ( void *  ptr)
inlinestatic

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