My Project
|
#include <sql_optimizer.h>
Classes | |
struct | null |
Public Member Functions | |
ORDER_with_src (ORDER *order_arg, Explain_sort_clause src_arg) | |
ORDER_with_src & | operator= (null *) |
ORDER_with_src (null *) | |
operator ORDER * () | |
operator const ORDER * () const | |
ORDER * | operator-> () const |
void | clean () |
void | set_flag (Explain_sort_property flag) |
void | reset_flag (Explain_sort_property flag) |
bool | get_flag (Explain_sort_property flag) const |
int | get_flags () const |
Public Attributes | |
ORDER * | order |
Explain_sort_clause | src |
Wrapper for ORDER* pointer to trace origins of ORDER list
As far as ORDER is just a head object of ORDER expression chain, we need some wrapper object to associate flags with the whole ORDER list.
JOIN::ORDER_with_src::ORDER_with_src | ( | null * | ) | [inline] |
Type-safe constructor from NULL
See a commentary for the "null" type above.
JOIN::ORDER_with_src::operator ORDER * | ( | ) | [inline] |
Transparent access to the wrapped order list
These operators are safe, since we don't do any conversion of ORDER_with_src value, but just an access to the wrapped ORDER pointer value. We can use ORDER_with_src objects instead ORDER pointers in a transparent way without accessor functions.
ORDER_with_src& JOIN::ORDER_with_src::operator= | ( | null * | ) | [inline] |
Type-safe NULL assignment
See a commentary for the "null" type above.