Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::OCI::DataReaderBase< DerivedT, DefineT > Class Template Reference

DataReaderBase Implements functionality common to DataReader and ArrayDataReader. More...

#include <HOCI.h>

Inheritance diagram for Harlinn::OCI::DataReaderBase< DerivedT, DefineT >:
[legend]
Collaboration diagram for Harlinn::OCI::DataReaderBase< DerivedT, DefineT >:
[legend]

Public Types

using DefineType = DefineT
 
using DerivedType = DerivedT
 

Public Member Functions

size_t CurrentRowIndex () const noexcept
 
size_t RowsFetched () const noexcept
 
DefineTypeGetDefine (UInt32 index) const noexcept
 
bool Read ()
 
template<typename T >
T As (UInt32 i) const
 
template<>
bool As (UInt32 index) const
 
template<>
std::optional< bool > As (UInt32 index) const
 
template<>
SByte As (UInt32 index) const
 
template<>
std::optional< SByteAs (UInt32 index) const
 
template<>
Byte As (UInt32 index) const
 
template<>
std::optional< ByteAs (UInt32 index) const
 
template<>
Int16 As (UInt32 index) const
 
template<>
std::optional< Int16As (UInt32 index) const
 
template<>
UInt16 As (UInt32 index) const
 
template<>
std::optional< UInt16As (UInt32 index) const
 
template<>
Int32 As (UInt32 index) const
 
template<>
std::optional< Int32As (UInt32 index) const
 
template<>
UInt32 As (UInt32 index) const
 
template<>
std::optional< UInt32As (UInt32 index) const
 
template<>
Int64 As (UInt32 index) const
 
template<>
std::optional< Int64As (UInt32 index) const
 
template<>
UInt64 As (UInt32 index) const
 
template<>
std::optional< UInt64As (UInt32 index) const
 
template<>
Single As (UInt32 index) const
 
template<>
std::optional< SingleAs (UInt32 index) const
 
template<>
Double As (UInt32 index) const
 
template<>
std::optional< DoubleAs (UInt32 index) const
 
template<>
DateTime As (UInt32 index) const
 
template<>
std::optional< DateTimeAs (UInt32 index) const
 
template<>
TimeSpan As (UInt32 index) const
 
template<>
std::optional< TimeSpanAs (UInt32 index) const
 
template<>
Guid As (UInt32 index) const
 
template<>
std::optional< GuidAs (UInt32 index) const
 
template<>
WideString As (UInt32 index) const
 
template<>
std::optional< WideStringAs (UInt32 index) const
 

Protected Member Functions

 DataReaderBase (const OCI::Statement &statement) noexcept
 
const OCI::StatementStatement () const noexcept
 
const OCI::ServiceContextServiceContext () const noexcept
 
const OCI::ErrorHandleError () const noexcept
 
const OCI::EnvironmentEnvironment () const
 

Protected Attributes

const OCI::Statementstatement_
 
std::vector< std::unique_ptr< DefineType > > defines_
 
size_t currentRowIndex_
 
size_t rowsFetched_
 
bool noMoreData_
 

Private Member Functions

bool IsDBNull (UInt32 index) const
 

Detailed Description

template<typename DerivedT, typename DefineT>
class Harlinn::OCI::DataReaderBase< DerivedT, DefineT >

DataReaderBase Implements functionality common to DataReader and ArrayDataReader.

Template Parameters
DerivedTThe derived implementation
DefineTThe base class for the defines allowed by the derived implementation

Member Typedef Documentation

◆ DefineType

template<typename DerivedT , typename DefineT >
using Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::DefineType = DefineT

◆ DerivedType

template<typename DerivedT , typename DefineT >
using Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::DerivedType = DerivedT

Constructor & Destructor Documentation

◆ DataReaderBase()

template<typename DerivedT , typename DefineT >
Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::DataReaderBase ( const OCI::Statement & statement)
inlineprotectednoexcept

Member Function Documentation

◆ As() [1/31]

template<typename DerivedT , typename DefineT >
template<typename T >
T Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 i) const
nodiscard

◆ As() [2/31]

template<typename DerivedT , typename DefineT >
template<>
bool Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [3/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< bool > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [4/31]

template<typename DerivedT , typename DefineT >
template<>
SByte Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [5/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< SByte > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [6/31]

template<typename DerivedT , typename DefineT >
template<>
Byte Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [7/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Byte > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [8/31]

template<typename DerivedT , typename DefineT >
template<>
Int16 Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [9/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Int16 > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [10/31]

template<typename DerivedT , typename DefineT >
template<>
UInt16 Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [11/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< UInt16 > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [12/31]

template<typename DerivedT , typename DefineT >
template<>
Int32 Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [13/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Int32 > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [14/31]

template<typename DerivedT , typename DefineT >
template<>
UInt32 Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [15/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< UInt32 > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [16/31]

template<typename DerivedT , typename DefineT >
template<>
Int64 Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [17/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Int64 > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [18/31]

template<typename DerivedT , typename DefineT >
template<>
UInt64 Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [19/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< UInt64 > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [20/31]

template<typename DerivedT , typename DefineT >
template<>
Single Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [21/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Single > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [22/31]

template<typename DerivedT , typename DefineT >
template<>
Double Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [23/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Double > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [24/31]

template<typename DerivedT , typename DefineT >
template<>
DateTime Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [25/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< DateTime > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [26/31]

template<typename DerivedT , typename DefineT >
template<>
TimeSpan Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [27/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< TimeSpan > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [28/31]

template<typename DerivedT , typename DefineT >
template<>
Guid Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [29/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< Guid > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [30/31]

template<typename DerivedT , typename DefineT >
template<>
WideString Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ As() [31/31]

template<typename DerivedT , typename DefineT >
template<>
std::optional< WideString > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::As ( UInt32 index) const
inlinenodiscard

◆ CurrentRowIndex()

template<typename DerivedT , typename DefineT >
size_t Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::CurrentRowIndex ( ) const
inlinenoexcept

◆ Environment()

template<typename DerivedT , typename DefineT >
const OCI::Environment & Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::Environment ( ) const
inlineprotected

◆ Error()

template<typename DerivedT , typename DefineT >
const OCI::ErrorHandle & Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::Error ( ) const
inlineprotectednoexcept

◆ GetDefine()

template<typename DerivedT , typename DefineT >
DefineType * Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::GetDefine ( UInt32 index) const
inlinenoexcept

◆ IsDBNull()

template<typename DerivedT , typename DefineT >
bool Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::IsDBNull ( UInt32 index) const
inlinenodiscardprivate

◆ Read()

template<typename DerivedT , typename DefineT >
bool Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::Read ( )
inline

◆ RowsFetched()

template<typename DerivedT , typename DefineT >
size_t Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::RowsFetched ( ) const
inlinenoexcept

◆ ServiceContext()

template<typename DerivedT , typename DefineT >
const OCI::ServiceContext & Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::ServiceContext ( ) const
inlineprotectednoexcept

◆ Statement()

template<typename DerivedT , typename DefineT >
const OCI::Statement & Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::Statement ( ) const
inlineprotectednoexcept

Member Data Documentation

◆ currentRowIndex_

template<typename DerivedT , typename DefineT >
size_t Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::currentRowIndex_
protected

◆ defines_

template<typename DerivedT , typename DefineT >
std::vector< std::unique_ptr< DefineType > > Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::defines_
protected

◆ noMoreData_

template<typename DerivedT , typename DefineT >
bool Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::noMoreData_
protected

◆ rowsFetched_

template<typename DerivedT , typename DefineT >
size_t Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::rowsFetched_
protected

◆ statement_

template<typename DerivedT , typename DefineT >
const OCI::Statement* Harlinn::OCI::DataReaderBase< DerivedT, DefineT >::statement_
protected

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