Drizzled Public API Documentation

select_result_interceptor.h
00001 /* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
00002  *  vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
00003  *
00004  *  Copyright (C) 2008 Sun Microsystems, Inc.
00005  *
00006  *  This program is free software; you can redistribute it and/or modify
00007  *  it under the terms of the GNU General Public License as published by
00008  *  the Free Software Foundation; version 2 of the License.
00009  *
00010  *  This program is distributed in the hope that it will be useful,
00011  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  *  GNU General Public License for more details.
00014  *
00015  *  You should have received a copy of the GNU General Public License
00016  *  along with this program; if not, write to the Free Software
00017  *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00018  */
00019 
00020 
00021 #pragma once
00022 
00023 #include <drizzled/select_result.h>
00024 
00025 namespace drizzled
00026 {
00027 
00028 /*
00029   Base class for select_result descendands which intercept and
00030   transform result set rows. As the rows are not sent to the client,
00031   sending of result set metadata should be suppressed as well.
00032 */
00033 
00034 class select_result_interceptor: public select_result
00035 {
00036 public:
00037   select_result_interceptor() {}              /* Remove gcc warning */
00038   uint32_t field_count(List<Item> &) const
00039   { return 0; }
00040   bool send_fields(List<Item> &)
00041   { return false; }
00042 };
00043 
00044 
00045 } /* namespace drizzled */
00046