18 #include "sql_bitmap.h"
59 merge(const_cast<ndb_table_access_map&>(table_map));
61 void add(uint table_no)
68 return table_map.is_subset(*
this);
70 bool contain(uint table_no)
const
72 return is_set(table_no);
75 uint first_table(uint start= 0)
const;
102 bool needSorted)
const;
108 uint paramCnt)
const;
112 {
return m_operation_count; }
120 {
return m_field_count; }
123 {
return *m_query_def; }
128 DBUG_ASSERT(i < m_operation_count);
159 uint m_operation_count;
168 const uint m_field_count;
189 friend ndb_pushed_join::ndb_pushed_join(
207 const NdbError& getNdbError()
const;
214 bool is_pushable_with_root(
217 bool is_pushable_as_child(
220 bool is_const_item_pushable(
221 const Item* key_item,
224 bool is_field_item_pushable(
226 const Item* key_item,
230 int optimize_query_plan();
234 void collect_key_refs(
236 const Item* key_refs[])
const;
241 uint get_table_no(
const Item* key_item)
const;
266 PUSHABLE_AS_PARENT= 0x01,
267 PUSHABLE_AS_CHILD= 0x02
282 int m_maybe_pushable;