From bb2358220adfe274b54d9b155205b60ddfe625c6 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 1 Mar 2011 11:56:33 +0200 Subject: Add support for embedded database schemas New options: --schema-format, --default-schema. New example: schema/embedded. --- odb/schema-catalog-impl.hxx | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 odb/schema-catalog-impl.hxx (limited to 'odb/schema-catalog-impl.hxx') diff --git a/odb/schema-catalog-impl.hxx b/odb/schema-catalog-impl.hxx new file mode 100644 index 0000000..782536a --- /dev/null +++ b/odb/schema-catalog-impl.hxx @@ -0,0 +1,44 @@ +// file : odb/schema-catalog-impl.hxx +// author : Boris Kolpackov +// copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +// license : GNU GPL v2; see accompanying LICENSE file + +#ifndef ODB_SCHEMA_CATALOG_IMPL_HXX +#define ODB_SCHEMA_CATALOG_IMPL_HXX + +#include + +#include + +#include + +#include + +namespace odb +{ + struct schema_catalog_impl; + + // Translation unit initializer. + // + struct LIBODB_EXPORT schema_catalog_init + { + static schema_catalog_impl* catalog; + static std::size_t count; + + schema_catalog_init (); + ~schema_catalog_init (); + }; + + static const schema_catalog_init schema_catalog_init_; + + // Catalog entry registration. + // + struct LIBODB_EXPORT schema_catalog_entry + { + schema_catalog_entry (const char* name, void (*entry) (database&)); + }; +} + +#include + +#endif // ODB_SCHEMA_CATALOG_IMPL_HXX -- cgit v1.1