My Project
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
subselect_engine Class Reference
Inheritance diagram for subselect_engine:
Sql_alloc subselect_indexsubquery_engine subselect_single_select_engine subselect_union_engine subselect_hash_sj_engine

List of all members.

Public Types

enum  enum_engine_type {
  ABSTRACT_ENGINE, SINGLE_SELECT_ENGINE, UNION_ENGINE, UNIQUESUBQUERY_ENGINE,
  INDEXSUBQUERY_ENGINE, HASH_SJ_ENGINE
}

Public Member Functions

 subselect_engine (Item_subselect *si, select_result_interceptor *res)
virtual void cleanup ()=0
void set_thd_for_result ()
 Sets "thd" for 'result'. Should be called before prepare()
virtual bool prepare ()=0
virtual void fix_length_and_dec (Item_cache **row)=0
virtual bool exec ()=0
virtual uint cols () const =0
virtual uint8 uncacheable () const =0
virtual enum Item_result type () const
virtual enum_field_types field_type () const
virtual void exclude ()=0
virtual bool may_be_null () const
virtual table_map upper_select_const_tables () const =0
virtual void print (String *str, enum_query_type query_type)=0
virtual bool change_result (Item_subselect *si, select_result_interceptor *result)=0
virtual bool no_tables () const =0
virtual bool is_executed () const
virtual enum_engine_type engine_type () const
const Item_subselectget_item () const

Static Public Member Functions

static table_map calc_const_tables (TABLE_LIST *)

Protected Member Functions

void set_row (List< Item > &item_list, Item_cache **row)

Protected Attributes

select_result_interceptor * result
Item_subselectitem
enum Item_result res_type
enum_field_types res_field_type
bool maybe_null

Member Function Documentation

virtual void subselect_engine::cleanup ( ) [pure virtual]

Cleanup engine after complete query execution, free all resources.

Implemented in subselect_hash_sj_engine, subselect_indexsubquery_engine, subselect_union_engine, and subselect_single_select_engine.

const Item_subselect* subselect_engine::get_item ( ) const [inline]
Returns:
the internal Item. Defined only in debug builds, because should be used only for debug asserts.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines