CUBRID Engine  latest
cubmem::extensible_block Struct Reference

#include <mem_block.hpp>

Collaboration diagram for cubmem::extensible_block:
Collaboration graph

Public Member Functions

 extensible_block ()
 
 extensible_block (extensible_block &&b)
 
 extensible_block (const block_allocator &alloc)
 
 ~extensible_block ()
 
extensible_blockoperator= (extensible_block &&b)
 
void extend_by (size_t additional_bytes)
 
void extend_to (size_t total_bytes)
 
void freemem ()
 
char * get_ptr ()
 
const char * get_read_ptr () const
 
std::size_t get_size () const
 
char * release_ptr ()
 

Private Member Functions

 extensible_block (const extensible_block &)=delete
 
extensible_blockoperator= (const extensible_block &)=delete
 

Private Attributes

block m_block
 
const block_allocatorm_allocator
 

Detailed Description

Definition at line 159 of file mem_block.hpp.

Constructor & Destructor Documentation

cubmem::extensible_block::extensible_block ( )
inline

Definition at line 301 of file mem_block.hpp.

References cubmem::STANDARD_BLOCK_ALLOCATOR.

cubmem::extensible_block::extensible_block ( extensible_block &&  b)
inline

Definition at line 306 of file mem_block.hpp.

References m_allocator, and NULL.

cubmem::extensible_block::extensible_block ( const block_allocator alloc)
inline

Definition at line 313 of file mem_block.hpp.

References m_allocator.

cubmem::extensible_block::~extensible_block ( )
inline

Definition at line 334 of file mem_block.hpp.

References m_allocator, m_block, and cubmem::block_allocator::m_dealloc_f.

Referenced by operator=().

Here is the caller graph for this function:

cubmem::extensible_block::extensible_block ( const extensible_block )
privatedelete

Member Function Documentation

void cubmem::extensible_block::extend_by ( size_t  additional_bytes)
inline

Definition at line 340 of file mem_block.hpp.

References cubmem::block::dim, cubmem::block_allocator::m_alloc_f, m_allocator, and m_block.

Referenced by cubmem::extensible_stack_block< S >::extend_by(), and extend_to().

Here is the caller graph for this function:

void cubmem::extensible_block::freemem ( )
inline

Definition at line 356 of file mem_block.hpp.

References m_allocator, m_block, and cubmem::block_allocator::m_dealloc_f.

Referenced by log_postpone_cache::reset(), and record_descriptor::set_external_buffer().

Here is the caller graph for this function:

const char * cubmem::extensible_block::get_read_ptr ( void  ) const
inline
std::size_t cubmem::extensible_block::get_size ( void  ) const
inline

Definition at line 374 of file mem_block.hpp.

References cubmem::block::dim, and m_block.

Referenced by string_buffer::operator()(), string_buffer::operator+=(), record_descriptor::release_buffer(), and log_postpone_cache::reset().

Here is the caller graph for this function:

extensible_block & cubmem::extensible_block::operator= ( extensible_block &&  b)
inline
extensible_block& cubmem::extensible_block::operator= ( const extensible_block )
privatedelete
char * cubmem::extensible_block::release_ptr ( )
inline

Definition at line 380 of file mem_block.hpp.

References cubmem::block::dim, m_block, NULL, and cubmem::block::ptr.

Referenced by record_descriptor::release_buffer(), and string_buffer::release_ptr().

Here is the caller graph for this function:

Member Data Documentation

const block_allocator* cubmem::extensible_block::m_allocator
private

Definition at line 182 of file mem_block.hpp.

Referenced by extend_by(), extensible_block(), freemem(), operator=(), and ~extensible_block().

block cubmem::extensible_block::m_block
private

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