--- parser3/src/include/pa_table.h 2001/01/29 22:34:57 1.5 +++ parser3/src/include/pa_table.h 2001/03/12 12:00:05 1.11 @@ -1,9 +1,13 @@ /* - $Id: pa_table.h,v 1.5 2001/01/29 22:34:57 paf Exp $ + Parser + Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) + Author: Alexander Petrosyan (http://design.ru/paf) + + $Id: pa_table.h,v 1.11 2001/03/12 12:00:05 paf Exp $ */ /* - hence most of tables are "named", no need to uptimize unnamed onces + hence most of tables are "named", no need to uptimize nameless onces */ @@ -19,7 +23,7 @@ class Table : public Array { public: - Table(Request& request, + Table(Pool& apool, char *afile, uint aline, Array *acolumns, int initial_rows=CR_INITIAL_ROWS_DEFAULT); @@ -33,15 +37,10 @@ public: int get_current() { return fcurrent; } void inc_current() { fcurrent++; } - void read_item(String& result, const String& column_name) { - result.APPEND(item(column_name), forigin.file, forigin.line+fcurrent); - } + const String *item(const String& column_name); protected: - // request I'm processed on - Request& request; - // the base origin of table's data Origin forigin; @@ -54,10 +53,11 @@ protected: // columns Array *fcolumns; - const Array *at(int index); + const Array& at(int index); - const char *item(int column_index); - const char *item(const String& column_name); + const String *item(int column_index) { + return at(fcurrent).get_string(column_index); + } }; #endif