Drizzled Public API Documentation

drizzled::optimizer::SEL_ARG Class Reference
Inheritance diagram for drizzled::optimizer::SEL_ARG:
drizzled::memory::SqlAlloc

Public Types

enum  leaf_color { BLACK, RED }
 
enum  Type { IMPOSSIBLE, MAYBE, MAYBE_KEY, KEY_RANGE }
 
enum  { MAX_SEL_ARGS = 16000 }
 

Public Member Functions

 SEL_ARG (SEL_ARG &)
 
 SEL_ARG (Field *, const unsigned char *, const unsigned char *)
 
 SEL_ARG (Field *field, uint8_t part, unsigned char *min_value, unsigned char *max_value, uint8_t min_flag, uint8_t max_flag, uint8_t maybe_flag)
 
 SEL_ARG (enum Type type_arg)
 
int size () const
 
bool is_same (SEL_ARG *arg)
 
void merge_flags (SEL_ARG *arg)
 
void maybe_smaller ()
 
bool is_null_interval ()
 
int cmp_min_to_min (SEL_ARG *arg)
 
int cmp_min_to_max (SEL_ARG *arg)
 
int cmp_max_to_max (SEL_ARG *arg)
 
int cmp_max_to_min (SEL_ARG *arg)
 
SEL_ARGclone_and (SEL_ARG *arg)
 
SEL_ARGclone_first (SEL_ARG *arg)
 
SEL_ARGclone_last (SEL_ARG *arg)
 
SEL_ARGclone (RangeParameter *param, SEL_ARG *new_parent, SEL_ARG **next)
 
bool copy_min (SEL_ARG *arg)
 
bool copy_max (SEL_ARG *arg)
 
void copy_min_to_min (SEL_ARG *arg)
 
void copy_min_to_max (SEL_ARG *arg)
 
void copy_max_to_min (SEL_ARG *arg)
 
int store_min (uint32_t length, unsigned char **min_key, uint32_t min_key_flag)
 
int store_max (uint32_t length, unsigned char **max_key, uint32_t max_key_flag)
 
int store_min_key (KEY_PART *key, unsigned char **range_key, uint32_t *range_key_flag)
 
int store_max_key (KEY_PART *key, unsigned char **range_key, uint32_t *range_key_flag)
 
SEL_ARGinsert (SEL_ARG *key)
 
SEL_ARGtree_delete (SEL_ARG *key)
 
SEL_ARGfind_range (SEL_ARG *key)
 
SEL_ARGrb_insert (SEL_ARG *leaf)
 
SEL_ARGfirst ()
 
SEL_ARGlast ()
 
void make_root ()
 
bool simple_key ()
 
void increment_use_count (long count)
 
void free_tree ()
 
SEL_ARG ** parent_ptr ()
 
bool is_singlepoint ()
 
SEL_ARGclone_tree (RangeParameter *param)
 

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 *)
 

Public Attributes

uint8_t min_flag
 
uint8_t max_flag
 
uint8_t maybe_flag
 
uint8_t part
 
uint8_t maybe_null
 
uint16_t elements
 
ulong use_count
 
Fieldfield
 
unsigned char * min_value
 
unsigned char * max_value
 
SEL_ARGleft
 
SEL_ARGright
 
SEL_ARGnext
 
SEL_ARGprev
 
SEL_ARGparent
 
SEL_ARGnext_key_part
 
enum drizzled::optimizer::SEL_ARG::leaf_color color
 
enum drizzled::optimizer::SEL_ARG::Type type
 

Private Member Functions

int sel_cmp (Field *in_field, unsigned char *a, unsigned char *b, uint8_t a_flag, uint8_t b_flag)
 

Friends

SEL_ARGrb_delete_fixup (SEL_ARG *root, SEL_ARG *key, SEL_ARG *par)
 

Detailed Description

Definition at line 195 of file sel_arg.h.


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