Public Member Functions
psql::Cursor< BTypes, RTypes > Class Template Reference

Represents a server side cursor. More...

#include <Cursor.h>

Inheritance diagram for psql::Cursor< BTypes, RTypes >:
psql::ICursor

Public Member Functions

 Cursor (Database &db, std::string const &name, Statement< BTypes, RTypes > const &s)
 Construct a cursor for given statement.
template<typename... Args>
void open (Args...a)
 Opens a cursor.
std::vector< typename
RTypes::RowType > const & 
get_buffer ()
void fetch (int count)
 Fetch next count rows from cursor.
virtual ~Cursor ()
 Cursor (Cursor const &)
Cursoroperator= (Cursor const &)
 Cursor ()
 Constructs an empty cursor.
 Cursor (Cursor &&other)
 Move constructs a Cursor from other Cursor.
Cursoroperator= (Cursor &&other)
 Move assigns from other Cursor.
void close ()
 Closes the cursor.

Detailed Description

template<typename BTypes, typename RTypes>
class psql::Cursor< BTypes, RTypes >

Represents a server side cursor.

BTypes and RTypes specify types of arguments to statement execution and types of rows returned respectively.

Definition at line 25 of file Cursor.h.


Constructor & Destructor Documentation

template<typename BTypes, typename RTypes>
psql::Cursor< BTypes, RTypes >::Cursor ( Database db,
std::string const &  name,
Statement< BTypes, RTypes > const &  s 
) [inline]

Construct a cursor for given statement.

Parameters:
dbdatabase connection to use
namename of the cursor
sstatement to use

Definition at line 34 of file Cursor.h.

template<typename BTypes, typename RTypes>
virtual psql::Cursor< BTypes, RTypes >::~Cursor ( ) [inline, virtual]

Definition at line 77 of file Cursor.h.

template<typename BTypes, typename RTypes>
psql::Cursor< BTypes, RTypes >::Cursor ( Cursor< BTypes, RTypes > const &  )
template<typename BTypes, typename RTypes>
psql::Cursor< BTypes, RTypes >::Cursor ( ) [inline]

Constructs an empty cursor.

Definition at line 86 of file Cursor.h.

template<typename BTypes, typename RTypes>
psql::Cursor< BTypes, RTypes >::Cursor ( Cursor< BTypes, RTypes > &&  other) [inline]

Move constructs a Cursor from other Cursor.

Parameters:
other

Definition at line 95 of file Cursor.h.


Member Function Documentation

template<typename BTypes, typename RTypes>
void psql::Cursor< BTypes, RTypes >::close ( ) [inline]

Closes the cursor.

Definition at line 124 of file Cursor.h.

template<typename BTypes, typename RTypes>
void psql::Cursor< BTypes, RTypes >::fetch ( int  count) [inline]

Fetch next count rows from cursor.

Parameters:
count

Definition at line 70 of file Cursor.h.

template<typename BTypes, typename RTypes>
std::vector<typename RTypes::RowType> const& psql::Cursor< BTypes, RTypes >::get_buffer ( ) [inline]
Returns:
std::vector of last rows fetched

Definition at line 61 of file Cursor.h.

template<typename BTypes, typename RTypes>
template<typename... Args>
void psql::Cursor< BTypes, RTypes >::open ( Args...  a) [inline]

Opens a cursor.

Args have to correspond to BTypes

Parameters:
aarguments to query

Definition at line 48 of file Cursor.h.

template<typename BTypes, typename RTypes>
Cursor& psql::Cursor< BTypes, RTypes >::operator= ( Cursor< BTypes, RTypes > const &  )
template<typename BTypes, typename RTypes>
Cursor& psql::Cursor< BTypes, RTypes >::operator= ( Cursor< BTypes, RTypes > &&  other) [inline]

Move assigns from other Cursor.

Parameters:
other
Returns:
*this

Definition at line 106 of file Cursor.h.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines