#ifndef PGSQL_VALUE_H #define PGSQL_VALUE_H #include "Pgsql_declare.h" #include #include namespace Pgsql { /** \brief Class that is returned as value of a cell to facilitate auto conversion. */ class Value { public: Value(const char *val, Oid typ); QString asQString() const; const char* c_str() const { return m_val; } operator QString() const; operator QDateTime() const; operator std::string() const; operator short() const; operator int() const; operator Oid() const; operator __int64() const; operator bool() const; private: const char *m_val; Oid m_typ; }; // void operator<<(QString &s, const Value &v); // void operator<<(QDateTime &l, const Value &v); // void operator<<(std::string &l, const Value &v); // void operator<<(short &l, const Value &v); // void operator<<(int &l, const Value &v); // void operator<<(Oid &l, const Value &v); // void operator<<(__int64 &l, const Value &v); // void operator<<(bool &l, const Value &v); template void operator<<(T &s, const Value &v) { s = static_cast(v); } } // end namespace Pgsql #endif // PGSQL_VALUE_H