Sese Framework  2.3.0
A cross-platform framework
Loading...
Searching...
No Matches
sese::db::impl::SqliteResultSetImpl Class Referencefinal

SQLite result set implementation. More...

#include <SqliteResultSetImpl.h>

Inheritance diagram for sese::db::impl::SqliteResultSetImpl:
sese::db::ResultSet

Public Member Functions

 SqliteResultSetImpl (char **table, size_t r, size_t c, char *error) noexcept
 
 ~SqliteResultSetImpl () noexcept override
 
void reset () noexcept override
 Locate the first query record.
 
bool next () noexcept override
 Move to the next record.
 
bool isNull (size_t index) const noexcept override
 Determine if the returned result is null.
 
size_t getColumns () const noexcept override
 Get the number of columns in the record.
 
int32_t getInteger (size_t index) const noexcept override
 Get an integer value from the current record.
 
int64_t getLong (size_t index) const noexcept override
 Get a long integer value from the current record.
 
std::string_view getString (size_t index) const noexcept override
 Get a string from the current record.
 
double getDouble (size_t index) const noexcept override
 Get a double-precision floating-point value from the current record.
 
float getFloat (size_t index) const noexcept override
 Get a single-precision floating-point value from the current record.
 
std::optional< sese::DateTimegetDateTime (size_t index) const noexcept override
 Get a time data structure from the current record.
 
- Public Member Functions inherited from sese::db::ResultSet
virtual ~ResultSet () noexcept=default
 

Protected Attributes

size_t rows
 
size_t columns
 
char ** table
 
char * error = nullptr
 
size_t current = 0
 

Additional Inherited Members

- Public Types inherited from sese::db::ResultSet
using Ptr = std::unique_ptr<ResultSet>
 

Detailed Description

SQLite result set implementation.

Constructor & Destructor Documentation

◆ SqliteResultSetImpl()

impl::SqliteResultSetImpl::SqliteResultSetImpl ( char ** table,
size_t r,
size_t c,
char * error )
noexcept

References c.

◆ ~SqliteResultSetImpl()

impl::SqliteResultSetImpl::~SqliteResultSetImpl ( )
overridenoexcept

References error, and table.

Member Function Documentation

◆ getColumns()

size_t impl::SqliteResultSetImpl::getColumns ( ) const
nodiscardoverridevirtualnoexcept

Get the number of columns in the record.

Returns
Number of columns in the result set record

Implements sese::db::ResultSet.

◆ getDateTime()

std::optional< sese::DateTime > impl::SqliteResultSetImpl::getDateTime ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a time data structure from the current record.

Parameters
indexIndex
Returns
Time data structure

Implements sese::db::ResultSet.

References sese::text::DateTimeParser::parse().

◆ getDouble()

double impl::SqliteResultSetImpl::getDouble ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a double-precision floating-point value from the current record.

Parameters
indexIndex
Returns
Double-precision floating-point value

Implements sese::db::ResultSet.

◆ getFloat()

float impl::SqliteResultSetImpl::getFloat ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a single-precision floating-point value from the current record.

Parameters
indexIndex
Returns
Single-precision floating-point value

Implements sese::db::ResultSet.

◆ getInteger()

int32_t impl::SqliteResultSetImpl::getInteger ( size_t index) const
nodiscardoverridevirtualnoexcept

Get an integer value from the current record.

Parameters
indexIndex
Returns
Integer value

Implements sese::db::ResultSet.

◆ getLong()

int64_t impl::SqliteResultSetImpl::getLong ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a long integer value from the current record.

Parameters
indexIndex
Returns
Long integer value

Implements sese::db::ResultSet.

◆ getString()

std::string_view impl::SqliteResultSetImpl::getString ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a string from the current record.

Parameters
indexIndex
Returns
String

Implements sese::db::ResultSet.

◆ isNull()

bool impl::SqliteResultSetImpl::isNull ( size_t index) const
nodiscardoverridevirtualnoexcept

Determine if the returned result is null.

Parameters
indexIndex
Returns
Whether it is null

Implements sese::db::ResultSet.

◆ next()

bool impl::SqliteResultSetImpl::next ( )
nodiscardoverridevirtualnoexcept

Move to the next record.

Returns
Whether there is a next record

Implements sese::db::ResultSet.

◆ reset()

void impl::SqliteResultSetImpl::reset ( )
overridevirtualnoexcept

Locate the first query record.

Implements sese::db::ResultSet.

Member Data Documentation

◆ columns

size_t sese::db::impl::SqliteResultSetImpl::columns
protected

◆ current

size_t sese::db::impl::SqliteResultSetImpl::current = 0
protected

◆ error

char* sese::db::impl::SqliteResultSetImpl::error = nullptr
protected

Referenced by ~SqliteResultSetImpl().

◆ rows

size_t sese::db::impl::SqliteResultSetImpl::rows
protected

◆ table

char** sese::db::impl::SqliteResultSetImpl::table
protected

Referenced by ~SqliteResultSetImpl().


The documentation for this class was generated from the following files: