Drizzled Public API Documentation

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

List of all members.

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: