#ifndef SQLITERESULTSET_H #define SQLITERESULTSET_H #include "SQLiteStatement.h" #include #include #include namespace SQLite { class SQLiteResultSet { public: SQLiteResultSet(SQLiteStatement& statement); public: void AfterLast(); void BeforeFirst(); bool First(); bool IsAfterLast() const; bool IsBeforeFirst() const; bool IsFirst() const; bool IsLast() const; bool Last(); bool Next(); bool Previous(); size_t Row() const; size_t RowsCount() const; bool Empty() const; uint32_t FindColumn(const std::string& columnName) const; long double Double(uint32_t columnIndex) const; long double Double(const std::string& columnLabel) const; int32_t Int(uint32_t columnIndex) const; int32_t Int(const std::string& columnLabel) const; std::string String(uint32_t columnIndex) const; std::string String(const std::string& columnName) const; void Print() const; private: int Size() const; int LastIndex() const; private: std::vector m_columns; std::vector> m_values; int m_currentRow; }; } // namespace SQLite #endif // SQLITERESULTSET_H