fixed type overloads

This commit is contained in:
Günter Obiltschnig
2020-01-09 18:02:29 +01:00
parent c111fc89f6
commit aa46e9b6e4
34 changed files with 958 additions and 50 deletions

View File

@@ -165,6 +165,7 @@ public:
virtual void bind(std::size_t pos, const std::list<Poco::UInt64>& val, Direction dir = PD_IN);
/// Binds an UInt64 list.
#ifndef POCO_INT64_IS_LONG
virtual void bind(std::size_t pos, const long& val, Direction dir = PD_IN) = 0;
/// Binds a long.
@@ -179,6 +180,7 @@ public:
virtual void bind(std::size_t pos, const std::list<long>& val, Direction dir = PD_IN);
/// Binds a long list.
#endif
virtual void bind(std::size_t pos, const bool& val, Direction dir = PD_IN) = 0;
/// Binds a boolean.

View File

@@ -155,6 +155,7 @@ public:
virtual bool extract(std::size_t pos, std::list<Poco::UInt64>& val);
/// Extracts an UInt64 list.
#ifndef POCO_INT64_IS_LONG
virtual bool extract(std::size_t pos, long& val) = 0;
/// Extracts a long. Returns false if null was received.
@@ -169,6 +170,7 @@ public:
virtual bool extract(std::size_t pos, std::list<long>& val);
/// Extracts a long list.
#endif
virtual bool extract(std::size_t pos, bool& val) = 0;
/// Extracts a boolean. Returns false if null was received.

View File

@@ -161,6 +161,7 @@ public:
virtual void prepare(std::size_t pos, const std::list<Poco::UInt64>& val);
/// Prepares an UInt64 list.
#ifndef POCO_INT64_IS_LONG
virtual void prepare(std::size_t pos, const long&) = 0;
/// Prepares a long.
@@ -175,6 +176,7 @@ public:
virtual void prepare(std::size_t pos, const std::list<long>& val);
/// Prepares a long list.
#endif
virtual void prepare(std::size_t pos, const bool&) = 0;
/// Prepares a boolean.

View File

@@ -59,7 +59,7 @@ public:
/// Creates the AbstractSessionImpl.
///
/// Adds "storage" property and sets the default internal storage container
/// type to std::vector.
/// type to std::deque.
/// The storage is created by statements automatically whenever a query
/// returning results is executed but external storage is provided by the user.
/// Storage type can be reconfigured at runtime both globally (for the

View File

@@ -258,11 +258,13 @@ public:
Statement& operator , (Poco::Int32 value);
/// Adds the value to the list of values to be supplied to the SQL string formatting function.
#ifndef POCO_INT64_IS_LONG
Statement& operator , (long value);
/// Adds the value to the list of values to be supplied to the SQL string formatting function.
Statement& operator , (unsigned long value);
/// Adds the value to the list of values to be supplied to the SQL string formatting function.
#endif
Statement& operator , (Poco::UInt64 value);
/// Adds the value to the list of values to be supplied to the SQL string formatting function.
@@ -572,6 +574,7 @@ inline Statement& Statement::operator , (Poco::Int32 value)
}
#ifndef POCO_INT64_IS_LONG
inline Statement& Statement::operator , (long value)
{
return commaPODImpl(value);
@@ -582,6 +585,7 @@ inline Statement& Statement::operator , (unsigned long value)
{
return commaPODImpl(value);
}
#endif
inline Statement& Statement::operator , (Poco::UInt64 value)

View File

@@ -243,11 +243,11 @@ protected:
/// session is queried for container type setting. If the
/// session container type setting is found, it is used.
/// 3. If neither session nor statement have the internal
/// container type set, std::vector is used.
/// container type set, std::deque is used.
///
/// Supported internal extraction container types are:
/// - std::vector (default)
/// - std::deque
/// - std::deque (default)
/// - std::vector
/// - std::list
SessionImpl& session();