diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2024-01-24 19:01:19 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2024-01-24 19:01:19 +0300 |
commit | e5d0186db99492a139237067bab841a5b83463af (patch) | |
tree | 61719595e998314e58383c5081da16d7457a63e7 /libodb-sqlite/odb/sqlite/forward.hxx | |
parent | c53136bd7d266fccaca679d0471dd8ac0ce91373 (diff) |
Turn libodb-sqlite repository into package for muti-package repositorylibodb-sqlite
Diffstat (limited to 'libodb-sqlite/odb/sqlite/forward.hxx')
-rw-r--r-- | libodb-sqlite/odb/sqlite/forward.hxx | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/libodb-sqlite/odb/sqlite/forward.hxx b/libodb-sqlite/odb/sqlite/forward.hxx new file mode 100644 index 0000000..1be05b4 --- /dev/null +++ b/libodb-sqlite/odb/sqlite/forward.hxx @@ -0,0 +1,112 @@ +// file : odb/sqlite/forward.hxx +// license : GNU GPL v2; see accompanying LICENSE file + +#ifndef ODB_SQLITE_FORWARD_HXX +#define ODB_SQLITE_FORWARD_HXX + +#include <odb/pre.hxx> + +#include <odb/forward.hxx> + +namespace odb +{ + namespace sqlite + { + namespace core + { + using namespace odb::common; + } + + // + // + class database; + class connection; + typedef details::shared_ptr<connection> connection_ptr; + class connection_factory; + class statement; + class transaction; + class tracer; + + namespace core + { + using sqlite::database; + using sqlite::connection; + using sqlite::connection_ptr; + using sqlite::transaction; + using sqlite::statement; + } + + // Implementation details. + // + enum database_type_id + { + id_integer, + id_real, + id_text, + id_blob, + id_text_stream, + id_blob_stream + }; + + template <typename T, database_type_id> + struct default_value_traits; + + enum statement_kind + { + statement_select, + statement_insert, + statement_update, + statement_delete, + statement_generic + }; + + class binding; + class select_statement; + + template <typename T> + class object_statements; + + template <typename T> + class polymorphic_root_object_statements; + + template <typename T> + class polymorphic_derived_object_statements; + + template <typename T> + class no_id_object_statements; + + template <typename T> + class view_statements; + + template <typename T> + class container_statements; + + template <typename T> + class smart_container_statements; + + template <typename T, typename ST> + class section_statements; + + class query_base; + class query_params; + } + + namespace details + { + template <> + struct counter_type<sqlite::connection> + { + typedef shared_base counter; + }; + + template <> + struct counter_type<sqlite::query_params> + { + typedef shared_base counter; + }; + } +} + +#include <odb/post.hxx> + +#endif // ODB_SQLITE_FORWARD_HXX |