Bitcoin
Public Member Functions | Private Member Functions | Private Attributes | List of all members
leveldb::Arena Class Reference

#include <arena.h>

Public Member Functions

 Arena ()
 
 ~Arena ()
 
char * Allocate (size_t bytes)
 
char * AllocateAligned (size_t bytes)
 
size_t MemoryUsage () const
 

Private Member Functions

char * AllocateFallback (size_t bytes)
 
char * AllocateNewBlock (size_t block_bytes)
 
 Arena (const Arena &)
 
void operator= (const Arena &)
 

Private Attributes

char * alloc_ptr_
 
size_t alloc_bytes_remaining_
 
std::vector< char * > blocks_
 
port::AtomicPointer memory_usage_
 

Constructor & Destructor Documentation

◆ Arena() [1/2]

Arena::Arena ( )

◆ ~Arena()

Arena::~Arena ( )

◆ Arena() [2/2]

leveldb::Arena::Arena ( const Arena )
private

Member Function Documentation

◆ Allocate()

char * Arena::Allocate ( size_t  bytes)
inline

◆ AllocateAligned()

char * Arena::AllocateAligned ( size_t  bytes)

◆ AllocateFallback()

char * Arena::AllocateFallback ( size_t  bytes)
private

◆ AllocateNewBlock()

char * Arena::AllocateNewBlock ( size_t  block_bytes)
private

◆ MemoryUsage()

size_t leveldb::Arena::MemoryUsage ( ) const
inline

◆ operator=()

void leveldb::Arena::operator= ( const Arena )
private

Member Data Documentation

◆ alloc_bytes_remaining_

size_t leveldb::Arena::alloc_bytes_remaining_
private

◆ alloc_ptr_

char* leveldb::Arena::alloc_ptr_
private

◆ blocks_

std::vector<char*> leveldb::Arena::blocks_
private

◆ memory_usage_

port::AtomicPointer leveldb::Arena::memory_usage_
private

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