My Project
|
00001 /* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. 00002 00003 This program is free software; you can redistribute it and/or modify 00004 it under the terms of the GNU General Public License as published by 00005 the Free Software Foundation; version 2 of the License. 00006 00007 This program is distributed in the hope that it will be useful, 00008 but WITHOUT ANY WARRANTY; without even the implied warranty of 00009 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00010 GNU General Public License for more details. 00011 00012 You should have received a copy of the GNU General Public License 00013 along with this program; if not, write to the Free Software Foundation, 00014 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ 00015 00016 00017 #ifndef OPT_EXPLAIN_FORMAT_TRADITIONAL_INCLUDED 00018 #define OPT_EXPLAIN_FORMAT_TRADITIONAL_INCLUDED 00019 00020 #include "opt_explain_format.h" 00021 00026 class Explain_format_traditional : public Explain_format 00027 { 00028 class Item_null *nil; 00029 qep_row column_buffer; 00030 00031 public: 00032 Explain_format_traditional() : nil(NULL) {} 00033 00034 virtual bool is_hierarchical() const { return false; } 00035 virtual bool send_headers(select_result *result); 00036 virtual bool begin_context(Explain_context_enum, 00037 SELECT_LEX_UNIT *subquery, 00038 const Explain_format_flags *flags) 00039 { 00040 return false; 00041 } 00042 virtual bool end_context(Explain_context_enum) { return false; } 00043 virtual bool flush_entry(); 00044 virtual qep_row *entry() { return &column_buffer; } 00045 00046 private: 00047 bool push_select_type(List<Item> *items); 00048 }; 00049 00050 #endif//OPT_EXPLAIN_FORMAT_TRADITIONAL_INCLUDED