21
21
#ifndef PLUGIN_SCHEMA_DICTIONARY_TABLES_H
22
22
#define PLUGIN_SCHEMA_DICTIONARY_TABLES_H
24
class TablesTool : public SchemasTool
24
class TablesTool : public drizzled::plugin::TableFunction
30
30
TablesTool(const char *schema_arg, const char *table_arg) :
31
SchemasTool(schema_arg, table_arg)
31
drizzled::plugin::TableFunction(schema_arg, table_arg)
34
34
TablesTool(const char *table_arg) :
35
SchemasTool(table_arg)
35
drizzled::plugin::TableFunction("DATA_DICTIONARY", table_arg)
38
class Generator : public SchemasTool::Generator
38
class Generator : public drizzled::plugin::TableFunction::Generator
40
drizzled::message::Table table_proto;
41
std::set<std::string> table_names;
42
std::set<std::string>::iterator table_iterator;
43
bool is_tables_primed;
40
drizzled::generator::AllTables all_tables_generator;
41
drizzled::message::Table table_message;
45
43
virtual void fill();
49
46
Generator(drizzled::Field **arg);
51
void pushRow(drizzled::message::Table::TableOptions::RowType type);
52
void pushType(drizzled::message::Table::Field::FieldType type);
54
50
const std::string &table_name()
56
return (*table_iterator);
52
return table_message.name();
59
55
const drizzled::message::Table& getTableProto()
60
const drizzled::message::Table& getTableMessage()
64
65
bool isTablesPrimed()
66
return is_tables_primed;
73
73
Generator *generator(drizzled::Field **arg)