MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Explain_format Class Reference

#include <opt_explain_format.h>

Inheritance diagram for Explain_format:
Collaboration diagram for Explain_format:

Public Member Functions

virtual bool is_hierarchical () const =0
virtual bool send_headers (select_result *result)
virtual bool begin_context (Explain_context_enum context, SELECT_LEX_UNIT *subquery=0, const Explain_format_flags *flags=NULL)=0
virtual bool end_context (Explain_context_enum context)=0
virtual bool flush_entry ()=0
virtual qep_rowentry ()=0

Public Attributes

select_result * output
 output resulting data there

Additional Inherited Members

- Static Public Member Functions inherited from Sql_alloc
static void * operator new (size_t size) throw ()
static void * operator new[] (size_t size) throw ()
static void * operator new[] (size_t size, MEM_ROOT *mem_root) throw ()
static void * operator new (size_t size, MEM_ROOT *mem_root) throw ()
static void operator delete (void *ptr, size_t size)
static void operator delete (void *ptr, MEM_ROOT *mem_root)
static void operator delete[] (void *ptr, MEM_ROOT *mem_root)
static void operator delete[] (void *ptr, size_t size)

Detailed Description

Base class for structured and hierarchical EXPLAIN output formatters

Definition at line 528 of file opt_explain_format.h.

Member Function Documentation

virtual bool Explain_format::begin_context ( Explain_context_enum  context,
SELECT_LEX_UNIT *  subquery = 0,
const Explain_format_flags flags = NULL 
)
pure virtual

Enter a specified context

Parameters
contextcontext type
subqueryfor CTX_WHERE: unit of the subquery

Implemented in Explain_format_JSON, and Explain_format_traditional.

Here is the caller graph for this function:

virtual bool Explain_format::end_context ( Explain_context_enum  context)
pure virtual

Leave the current context

Parameters
contextcurrent context type (for validation/debugging)

Implemented in Explain_format_JSON, and Explain_format_traditional.

Here is the caller graph for this function:

virtual qep_row* Explain_format::entry ( )
pure virtual

Get a pointer to the current TABLE/JOIN_TAB property set

Implemented in Explain_format_JSON, and Explain_format_traditional.

Here is the caller graph for this function:

virtual bool Explain_format::flush_entry ( )
pure virtual

Flush TABLE/JOIN_TAB property set

For traditional EXPLAIN: output a single EXPLAIN row.

Implemented in Explain_format_JSON, and Explain_format_traditional.

Here is the caller graph for this function:

virtual bool Explain_format::is_hierarchical ( ) const
pure virtual

A hierarchical text or a plain table

Return values
trueFormatter produces hierarchical text
falseTraditional explain

Implemented in Explain_format_JSON, and Explain_format_traditional.

Here is the caller graph for this function:

virtual bool Explain_format::send_headers ( select_result *  result)
inlinevirtual

Send EXPLAIN header item(s) to output stream

Note
: This function caches the output result set pointer for further use.
Parameters
resultoutput result set
Return values
falseOK
trueError

Reimplemented in Explain_format_JSON, and Explain_format_traditional.

Definition at line 561 of file opt_explain_format.h.

Here is the caller graph for this function:


The documentation for this class was generated from the following file: