46
null_rejecting(false),
50
KeyUse(Table *in_table,
52
table_map in_used_tables,
56
key_part_map in_keypart_map,
57
ha_rows in_ref_table_rows,
58
bool in_null_rejecting,
63
used_tables(in_used_tables),
66
optimize(in_optimize),
67
keypart_map(in_keypart_map),
68
ref_table_rows(in_ref_table_rows),
69
null_rejecting(in_null_rejecting),
70
cond_guard(in_cond_guard)
83
table_map getUsedTables()
88
uint32_t getKey() const
93
uint32_t getKeypart() const
98
uint32_t getOptimizeFlags() const
103
key_part_map getKeypartMap()
108
ha_rows getTableRows() const
110
return ref_table_rows;
113
void setTableRows(ha_rows input)
115
ref_table_rows= input;
118
bool isNullRejected() const
120
return null_rejecting;
123
bool *getConditionalGuard()
35
130
Table *table; /**< Pointer to the table this key belongs to */
36
132
Item *val; /**< or value if no field */
37
134
table_map used_tables;
40
140
uint32_t optimize; /**< 0, or KEY_OPTIMIZE_* */
41
142
key_part_map keypart_map;
42
144
ha_rows ref_table_rows;
44
If true, the comparison this value was created from will not be
45
satisfied if val has NULL 'value'.
147
* If true, the comparison this value was created from will not be
148
* satisfied if val has NULL 'value'.
47
150
bool null_rejecting;
49
!NULL - This KeyUse was created from an equality that was wrapped into
50
an Item_func_trig_cond. This means the equality (and validity of
51
this KeyUse element) can be turned on and off. The on/off state
52
is indicted by the pointed value:
53
*cond_guard == true <=> equality condition is on
54
*cond_guard == false <=> equality condition is off
56
NULL - Otherwise (the source equality can't be turned off)
153
* !NULL - This KeyUse was created from an equality that was wrapped into
154
* an Item_func_trig_cond. This means the equality (and validity of
155
* this KeyUse element) can be turned on and off. The on/off state
156
* is indicted by the pointed value:
157
* *cond_guard == true <=> equality condition is on
158
* *cond_guard == false <=> equality condition is off
160
* NULL - Otherwise (the source equality can't be turned off)