Drizzled Public API Documentation

drizzled::base_list Class Reference
Inheritance diagram for drizzled::base_list:
drizzled::memory::SqlAlloc drizzled::List< T > drizzled::List< drizzled::Cached_item > drizzled::List< drizzled::CreateField > drizzled::List< drizzled::Index_hint > drizzled::List< drizzled::Item > drizzled::List< drizzled::Item_equal > drizzled::List< drizzled::Item_field > drizzled::List< drizzled::Item_sum > drizzled::List< drizzled::Key > drizzled::List< drizzled::Key_part_spec > drizzled::List< drizzled::lex_string_t > drizzled::List< drizzled::Natural_join_column > drizzled::List< drizzled::optimizer::SEL_IMERGE > drizzled::List< drizzled::String > drizzled::List< drizzled::TableList > drizzled::List< Item_field >

Public Member Functions

void clear ()
 
 base_list (const base_list &tmp)
 
 base_list (bool)
 
void push_back (void *info)
 
void push_back (void *info, memory::Root &mem)
 
void push_front (void *info)
 
void remove (list_node **prev)
 
void concat (base_list *list)
 
void * pop ()
 
void disjoin (base_list *list)
 
void prepand (base_list *list)
 
void swap (base_list &rhs)
 
bool is_empty ()
 

Static Public Member Functions

static void * operator new (size_t size)
 
static void * operator new (size_t size, Root &root)
 
static void * operator new (size_t size, Root *root)
 
static void * operator new[] (size_t size)
 
static void * operator new[] (size_t size, Root &root)
 
static void * operator new[] (size_t size, Root *root)
 
static void operator delete (void *)
 
static void operator delete (void *, Root &)
 
static void operator delete (void *, Root *)
 
static void operator delete[] (void *)
 
static void operator delete[] (void *, Root &)
 
static void operator delete[] (void *, Root *)
 

Protected Member Functions

void after (void *info, list_node *node)
 

Protected Attributes

list_nodefirst
 
list_node ** last
 
uint32_t elements
 

Friends

class base_list_iterator
 

Detailed Description

Definition at line 110 of file sql_list.h.

Constructor & Destructor Documentation

drizzled::base_list::base_list ( const base_list tmp)
inline

This is a shallow copy constructor that implicitly passes the ownership from the source list to the new instance. The old instance is not updated, so both objects end up sharing the same nodes. If one of the instances then adds or removes a node, the other becomes out of sync ('last' pointer), while still operational. Some old code uses and relies on this behaviour. This logic is quite tricky: please do not use it in any new code.

Definition at line 128 of file sql_list.h.

Member Function Documentation

void drizzled::base_list::swap ( base_list rhs)
inline

Swap two lists.

Definition at line 210 of file sql_list.h.


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