ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::APIs::alloc::overhead_n 命名空间参考

函数

constexpr size_t overhead_get_align (size_t align) noexcept
 
constexpr size_t overhead_get_offset_value (size_t align) noexcept
 
constexpr size_t correct_size (size_t size, size_t align) noexcept
 
constexpr size_t correct_align (size_t align) noexcept
 
constexpr pointer correct_pointer (pointer a, size_t align) noexcept
 
constexpr pointer recorrect_pointer (pointer a, size_t align) noexcept
 
constexpr const_pointer recorrect_pointer (const_pointer a, size_t align) noexcept
 
void set_overhead (pointer a, size_t size) noexcept
 
size_t get_overhead (const_pointer a) noexcept
 

函数说明

◆ correct_align()

constexpr size_t elc::APIs::alloc::overhead_n::correct_align ( size_t  align)
constexprnoexcept

在文件 all_defs.cpp13968 行定义.

13968 {
13969 return overhead_get_align(align);
13970 }
constexpr size_t overhead_get_align(size_t align) noexcept
函数调用图:
这是这个函数的调用关系图:

◆ correct_pointer()

constexpr pointer elc::APIs::alloc::overhead_n::correct_pointer ( pointer  a,
size_t  align 
)
inlineconstexprnoexcept

在文件 all_defs.cpp13971 行定义.

13971 {
13972 return apply_off_set(a,overhead_get_offset_value(align));
13973 }
constexpr size_t overhead_get_offset_value(size_t align) noexcept
函数调用图:
这是这个函数的调用关系图:

◆ correct_size()

constexpr size_t elc::APIs::alloc::overhead_n::correct_size ( size_t  size,
size_t  align 
)
constexprnoexcept

在文件 all_defs.cpp13965 行定义.

13965 {
13966 return size+overhead_get_offset_value(align);
13967 }
函数调用图:
这是这个函数的调用关系图:

◆ get_overhead()

size_t elc::APIs::alloc::overhead_n::get_overhead ( const_pointer  a)
inlinenoexcept

在文件 all_defs.cpp13983 行定义.

13983 {
13984 return*reinterpret_cast<const size_t*>(a);
13985 }
函数调用图:
这是这个函数的调用关系图:

◆ overhead_get_align()

constexpr size_t elc::APIs::alloc::overhead_n::overhead_get_align ( size_t  align)
constexprnoexcept

在文件 all_defs.cpp13957 行定义.

13957 {
13958 return max(align,alignof(size_t));//保证最高对齐需求
13959 }
函数调用图:
这是这个函数的调用关系图:

◆ overhead_get_offset_value()

constexpr size_t elc::APIs::alloc::overhead_n::overhead_get_offset_value ( size_t  align)
constexprnoexcept

在文件 all_defs.cpp13960 行定义.

13960 {
13961 align=overhead_get_align(align);
13962 return ceil_div(sizeof(size_t),align)*align;//等同于sizeof(size_t)-sizeof(size_t)%align+(sizeof(size_t)%align?align:0)
13963 //暨,偏移量既要大于sizeof(size_t)以装下overhead,又要是align的整数倍以保证T实例的对齐被满足
13964 }
函数调用图:
这是这个函数的调用关系图:

◆ recorrect_pointer() [1/2]

constexpr const_pointer elc::APIs::alloc::overhead_n::recorrect_pointer ( const_pointer  a,
size_t  align 
)
inlineconstexprnoexcept

在文件 all_defs.cpp13977 行定义.

13977 {
13978 return unapply_off_set(a,overhead_get_offset_value(align));
13979 }
函数调用图:

◆ recorrect_pointer() [2/2]

constexpr pointer elc::APIs::alloc::overhead_n::recorrect_pointer ( pointer  a,
size_t  align 
)
inlineconstexprnoexcept

在文件 all_defs.cpp13974 行定义.

13974 {
13975 return unapply_off_set(a,overhead_get_offset_value(align));
13976 }
函数调用图:
这是这个函数的调用关系图:

◆ set_overhead()

void elc::APIs::alloc::overhead_n::set_overhead ( pointer  a,
size_t  size 
)
inlinenoexcept

在文件 all_defs.cpp13980 行定义.

13980 {
13981 *reinterpret_cast<size_t*>(a)=size;
13982 }
函数调用图:
这是这个函数的调用关系图: