diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-01 11:56:33 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-01 11:56:33 +0200 |
commit | fe69d94f3d2dcb37d69ac2d7a0f88ad5fce2ad5c (patch) | |
tree | d93f7ea21f66e9fe416c48766b99f987ad7b3804 /odb/option-types.hxx | |
parent | 6c97eb68924e7f9ea5b0d859182562ec8f812a1e (diff) |
Add support for embedded database schemas
New options: --schema-format, --default-schema. New example: schema/embedded.
Diffstat (limited to 'odb/option-types.hxx')
-rw-r--r-- | odb/option-types.hxx | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/odb/option-types.hxx b/odb/option-types.hxx new file mode 100644 index 0000000..dc09780 --- /dev/null +++ b/odb/option-types.hxx @@ -0,0 +1,65 @@ +// file : odb/option-types.hxx +// author : Boris Kolpackov <boris@codesynthesis.com> +// copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +// license : GNU GPL v3; see accompanying LICENSE file + +#ifndef ODB_OPTION_TYPES_HXX +#define ODB_OPTION_TYPES_HXX + +#include <iosfwd> + +struct database +{ + enum value + { + // Keep in alphabetic order. + // + mysql, + tracer + }; + + database (value v = value (0)) : v_ (v) {} + operator value () const {return v_;} + + const char* + string () const; + +private: + value v_; +}; + +std::istream& +operator>> (std::istream&, database&); + +std::ostream& +operator<< (std::ostream&, database); + +// +// +struct schema_format +{ + enum value + { + // Keep in alphabetic order. + // + embedded, + sql + }; + + schema_format (value v = value (0)) : v_ (v) {} + operator value () const {return v_;} + + const char* + string () const; + +private: + value v_; +}; + +std::istream& +operator>> (std::istream&, schema_format&); + +std::ostream& +operator<< (std::ostream&, schema_format); + +#endif // ODB_OPTION_TYPES_HXX |