My Project
|
Public Member Functions | |
Item_cache (enum_field_types field_type_arg) | |
void | set_used_tables (table_map map) |
virtual table_map | resolved_used_tables () const |
virtual bool | allocate (uint i) |
virtual bool | setup (Item *item) |
enum Type | type () const |
enum_field_types | field_type () const |
table_map | used_tables () const |
virtual void | keep_array () |
virtual void | print (String *str, enum_query_type query_type) |
bool | eq_def (Field *field) |
bool | eq (const Item *item, bool binary_cmp) const |
bool | has_value () |
Field * | field () |
virtual void | store (Item *item) |
virtual bool | cache_value ()=0 |
bool | basic_const_item () const |
bool | walk (Item_processor processor, bool walk_subquery, uchar *argument) |
virtual void | clear () |
bool | is_null () |
Item_result | result_type () const |
Static Public Member Functions | |
static Item_cache * | get_cache (const Item *item) |
static Item_cache * | get_cache (const Item *item, const Item_result type) |
Protected Attributes | |
Item * | example |
table_map | used_table_map |
Field * | cached_field |
enum enum_field_types | cached_field_type |
bool | value_cached |
bool Item_cache::eq | ( | const Item * | item, |
bool | binary_cmp | ||
) | const [inline, virtual] |
This function is called when:
Reimplemented from Item.
Field* Item_cache::field | ( | ) | [inline] |
If this item caches a field value, return pointer to underlying field.
Item_cache * Item_cache::get_cache | ( | const Item * | item, |
const Item_result | type | ||
) | [static] |
Get a cache item of given type.
item | value to be cached |
type | required type of cache |
bool Item_cache::has_value | ( | ) | [inline] |
Check if saved item has a non-NULL value. Will cache value of saved item if not already done.
void Item_cache::print | ( | String * | str, |
enum_query_type | query_type | ||
) | [virtual] |
This method is used for to:
For more information about view definition query, INFORMATION_SCHEMA query and why they should be generated from the Item-tree,
Reimplemented from Item.
virtual table_map Item_cache::resolved_used_tables | ( | ) | const [inline, virtual] |
Return used table information for the level this item is resolved on.
Reimplemented from Item.
Field* Item_cache::cached_field [protected] |
Field that this object will get value from. This is used by index-based subquery engines to detect and remove the equality injected by IN->EXISTS transformation.