40 lines
1.1 KiB
C++
40 lines
1.1 KiB
C++
#ifndef PGTYPECONTAINER_H
|
|
#define PGTYPECONTAINER_H
|
|
|
|
#include <vector>
|
|
#include "PgType.h"
|
|
#include "PgContainer.h"
|
|
|
|
namespace Pgsql {
|
|
|
|
class Result;
|
|
|
|
}
|
|
|
|
class PgTypeContainer: public PgContainer<PgType> {
|
|
public:
|
|
// using t_Types = std::vector<PgType>; ///< Do not assume it will stay a vector only expect bidirectional access
|
|
|
|
explicit PgTypeContainer(PgDatabaseCatalogue *cat);
|
|
|
|
// t_Types::const_iterator begin() const { return m_types.begin(); }
|
|
// t_Types::const_iterator end() const { return m_types.end(); }
|
|
|
|
// void clear();
|
|
// int count() const { return (int)m_types.size(); }
|
|
std::string getLoadQuery();
|
|
void load(const Pgsql::Result &res);
|
|
|
|
/** Searches for the type matching the specified oid.
|
|
*
|
|
* \return Returns the matching type or if it is not found a default constructed PgType (oid == InvalidOid).
|
|
*/
|
|
// const PgType& getTypeByOid(Oid oid) const;
|
|
// const PgType& getTypeByName(const QString &name) const;
|
|
// const PgType& getTypeByIdx(int idx) const;
|
|
private:
|
|
// PgType m_invalidType; ///< default constructed object for when a non existent type is being retrieved.
|
|
// t_Types m_types; // Keep sorted by Oid
|
|
};
|
|
|
|
#endif // PGTYPECONTAINER_H
|