MySQL 8.0.40
Source Code Documentation
alloc.h File Reference

Implementation bits and pieces for PFS and non-PFS variants for normal allocations and deallocations through new, delete, malloc, zalloc, free etc. More...

#include <cassert>
#include <cstddef>
#include <cstdint>
#include <cstdlib>
#include <memory>
#include <utility>
#include "my_compiler.h"
#include "mysql/psi/mysql_memory.h"
#include "storage/innobase/include/detail/ut/allocator_traits.h"
#include "storage/innobase/include/detail/ut/helper.h"
#include "storage/innobase/include/detail/ut/pfs.h"

Go to the source code of this file.

Classes

struct  ut::detail::Alloc
 Allocation routines for non-extended alignment types, as opposed to Aligned_alloc for example. More...
 
struct  ut::detail::Alloc_arr
 Specialization of allocation routines for non-extended alignment types but which in comparison to Alloc are providing support for arrays. More...
 
struct  ut::detail::Alloc_pfs
 Allocation routines for non-extended alignment types, as opposed to Aligned_alloc_pfs for example, but which are instrumented through PFS (performance-schema). More...
 
struct  ut::detail::select_malloc_impl< Pfs_memory_instrumentation_on, Array_specialization >
 Simple utility metafunction which selects appropriate allocator variant (implementation) depending on the input parameter(s). More...
 
struct  ut::detail::select_malloc_impl< false, false >
 
struct  ut::detail::select_malloc_impl< false, true >
 
struct  ut::detail::select_malloc_impl< true, Array_specialization >
 
struct  ut::detail::Alloc_< Impl >
 Small wrapper which utilizes SFINAE to dispatch the call to appropriate allocator implementation. More...
 

Namespaces

namespace  ut
 This file contains a set of libraries providing overloads for regular dynamic allocation routines which allow for opt-in memory instrumentation through performance schema memory engine (PFS).
 
namespace  ut::detail
 

Typedefs

template<bool Pfs_memory_instrumentation_on, bool Array_specialization>
using ut::detail::select_malloc_impl_t = typename select_malloc_impl< Pfs_memory_instrumentation_on, Array_specialization >::type
 Just a small helper type which saves us some keystrokes. More...
 

Detailed Description

Implementation bits and pieces for PFS and non-PFS variants for normal allocations and deallocations through new, delete, malloc, zalloc, free etc.