mirror of
https://github.com/rbock/sqlpp11.git
synced 2024-11-15 20:31:16 +08:00
commit
13b5b5be30
@ -48,17 +48,17 @@ SQLPP_DECLARE_TABLE(
|
||||
SQLPP_DECLARE_TABLE(
|
||||
(tab_person)
|
||||
,
|
||||
(id , int , SQLPP_AUTO_INCREMENT)
|
||||
(name , varchar(255), SQLPP_NOT_NULL )
|
||||
(feature, int , SQLPP_NOT_NULL )
|
||||
(id , int , SQLPP_PRIMARY_KEY)
|
||||
(name , varchar(255), SQLPP_NOT_NULL )
|
||||
(feature, int , SQLPP_NOT_NULL )
|
||||
)
|
||||
|
||||
SQLPP_DECLARE_TABLE(
|
||||
(tab_feature)
|
||||
,
|
||||
(id , int , SQLPP_AUTO_INCREMENT)
|
||||
(name , varchar(255), SQLPP_NULL )
|
||||
(fatal, bool , SQLPP_NOT_NULL )
|
||||
(id , int , SQLPP_PRIMARY_KEY)
|
||||
(name , varchar(255), SQLPP_NULL )
|
||||
(fatal, bool , SQLPP_NOT_NULL )
|
||||
)
|
||||
|
||||
int main()
|
||||
|
@ -35,6 +35,19 @@
|
||||
# define BOOST_PP_VARIADICS 1
|
||||
#endif // defined(__clang__)
|
||||
|
||||
// boost.preprocessor
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/facilities/expand.hpp>
|
||||
#include <boost/preprocessor/punctuation/comma_if.hpp>
|
||||
#include <boost/preprocessor/comparison/less.hpp>
|
||||
#include <boost/preprocessor/arithmetic/add.hpp>
|
||||
#include <boost/preprocessor/seq/for_each.hpp>
|
||||
#include <boost/preprocessor/seq/for_each_i.hpp>
|
||||
#include <boost/preprocessor/stringize.hpp>
|
||||
#include <boost/preprocessor/tuple/elem.hpp>
|
||||
#include <boost/preprocessor/tuple/size.hpp>
|
||||
#include <boost/preprocessor/tuple/to_seq.hpp>
|
||||
|
||||
// tools
|
||||
#include <sqlpp11/ppgen/tools/wrap_seq.h>
|
||||
#include <sqlpp11/ppgen/tools/tuple_pop_front.h>
|
||||
@ -51,6 +64,7 @@
|
||||
#include <sqlpp11/ppgen/colops/datetime.h>
|
||||
#include <sqlpp11/ppgen/colops/default.h>
|
||||
#include <sqlpp11/ppgen/colops/floating_point.h>
|
||||
#include <sqlpp11/ppgen/colops/foreign_key.h>
|
||||
#include <sqlpp11/ppgen/colops/index.h>
|
||||
#include <sqlpp11/ppgen/colops/integer.h>
|
||||
#include <sqlpp11/ppgen/colops/not_null.h>
|
||||
@ -58,22 +72,9 @@
|
||||
#include <sqlpp11/ppgen/colops/primary_key.h>
|
||||
#include <sqlpp11/ppgen/colops/text.h>
|
||||
#include <sqlpp11/ppgen/colops/timestamp.h>
|
||||
#include <sqlpp11/ppgen/colops/unique.h>
|
||||
#include <sqlpp11/ppgen/colops/unique_index.h>
|
||||
#include <sqlpp11/ppgen/colops/varchar.h>
|
||||
|
||||
// boost.preprocessor
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/facilities/expand.hpp>
|
||||
#include <boost/preprocessor/punctuation/comma_if.hpp>
|
||||
#include <boost/preprocessor/comparison/less.hpp>
|
||||
#include <boost/preprocessor/arithmetic/add.hpp>
|
||||
#include <boost/preprocessor/seq/for_each.hpp>
|
||||
#include <boost/preprocessor/seq/for_each_i.hpp>
|
||||
#include <boost/preprocessor/stringize.hpp>
|
||||
#include <boost/preprocessor/tuple/elem.hpp>
|
||||
#include <boost/preprocessor/tuple/size.hpp>
|
||||
#include <boost/preprocessor/tuple/to_seq.hpp>
|
||||
|
||||
/***************************************************************************/
|
||||
// tools
|
||||
|
||||
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_AUTO_INCREMENT \
|
||||
PROC_SQLPP_AUTO_INCREMENT
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_AUTO_INCREMENT(...) \
|
||||
sqlpp::tag::must_not_update
|
||||
::sqlpp::tag::must_not_update
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__auto_increment_h
|
||||
|
@ -30,21 +30,21 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_tinyblob \
|
||||
PROC_tinyblob
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_tinyblob(...) \
|
||||
sqlpp::blob
|
||||
::sqlpp::blob
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_blob \
|
||||
PROC_blob
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_blob(...) \
|
||||
sqlpp::blob
|
||||
::sqlpp::blob
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_mediumblob \
|
||||
PROC_mediumblob
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_mediumblob(...) \
|
||||
sqlpp::blob
|
||||
::sqlpp::blob
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_longblob \
|
||||
PROC_longblob
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_longblob(...) \
|
||||
sqlpp::blob
|
||||
::sqlpp::blob
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__blob_h
|
||||
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_bool \
|
||||
PROC_bool
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_bool(...) \
|
||||
sqlpp::boolean
|
||||
::sqlpp::boolean
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__bool_h
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifndef _sqlpp__ppgen__colops__comment_h
|
||||
#define _sqlpp__ppgen__colops__comment_h
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_COMMENT(str) \
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_COMMENT \
|
||||
PROC_SQLPP_COMMENT
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_COMMENT(str) \
|
||||
[COMMENT is not implemented]
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifndef _sqlpp__ppgen__colops__default_h
|
||||
#define _sqlpp__ppgen__colops__default_h
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_DEFAULT(value) \
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_DEFAULT \
|
||||
PROC_SQLPP_DEFAULT
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_DEFAULT(...) \
|
||||
[DEFAULT is not implemented]
|
||||
|
@ -30,11 +30,11 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_float \
|
||||
PROC_float
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_float(...) \
|
||||
sqlpp::floating_point
|
||||
::sqlpp::floating_point
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_double \
|
||||
PROC_double
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_double(...) \
|
||||
sqlpp::floating_point
|
||||
::sqlpp::floating_point
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__floating_point_h
|
||||
|
@ -24,12 +24,12 @@
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _sqlpp__ppgen__colops__unique_h
|
||||
#define _sqlpp__ppgen__colops__unique_h
|
||||
#ifndef _sqlpp__ppgen__colops__foreign_key_h
|
||||
#define _sqlpp__ppgen__colops__foreign_key_h
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_UNIQUE \
|
||||
PROC_SQLPP_UNIQUE
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_UNIQUE(...) \
|
||||
[UNIQUE is not implemented]
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_FOREIGN_KEY \
|
||||
PROC_SQLPP_FOREIGN_KEY
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_FOREIGN_KEY(keyname, tblname, colname) \
|
||||
[FOREIGN KEY is not implemented]
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__unique_h
|
||||
#endif // _sqlpp__ppgen__colops__foreign_key_h
|
@ -27,9 +27,9 @@
|
||||
#ifndef _sqlpp__ppgen__colops__index_h
|
||||
#define _sqlpp__ppgen__colops__index_h
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_INDEX(name) \
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_INDEX \
|
||||
PROC_SQLPP_INDEX
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_INDEX(name) \
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_INDEX(indexname, tblname, /* cols */ ...) \
|
||||
[INDEX is not implemented]
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__index_h
|
||||
|
@ -30,21 +30,21 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_tinyint \
|
||||
PROC_tinyint
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_tinyint(...) \
|
||||
sqlpp::tinyint
|
||||
::sqlpp::tinyint
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_smallint \
|
||||
PROC_smallint
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_smallint(...) \
|
||||
sqlpp::smallint
|
||||
::sqlpp::smallint
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_int \
|
||||
PROC_int
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_int(...) \
|
||||
sqlpp::integer
|
||||
::sqlpp::integer
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_bigint \
|
||||
PROC_bigint
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_bigint(...) \
|
||||
sqlpp::bigint
|
||||
::sqlpp::bigint
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__integer_h
|
||||
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_NOT_NULL \
|
||||
PROC_SQLPP_NOT_NULL
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_NOT_NULL(...) \
|
||||
sqlpp::tag::require_insert
|
||||
::sqlpp::tag::require_insert
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__not_null_h
|
||||
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_NULL \
|
||||
PROC_SQLPP_NULL
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_NULL(...) \
|
||||
sqlpp::tag::can_be_null
|
||||
::sqlpp::tag::can_be_null
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__null_h
|
||||
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_PRIMARY_KEY \
|
||||
PROC_SQLPP_PRIMARY_KEY
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_PRIMARY_KEY(...) \
|
||||
[PRIMARY_KEY is not implemented]
|
||||
::sqlpp::tag::must_not_insert, ::sqlpp::tag::must_not_update
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__primary_key_h
|
||||
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_text \
|
||||
PROC_text
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_text(...) \
|
||||
sqlpp::text
|
||||
::sqlpp::text
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__text_h
|
||||
|
@ -24,12 +24,12 @@
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _sqlpp__ppgen__colops__key_h
|
||||
#define _sqlpp__ppgen__colops__key_h
|
||||
#ifndef _sqlpp__ppgen__colops__unique_index_h
|
||||
#define _sqlpp__ppgen__colops__unique_index_h
|
||||
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_KEY(name) \
|
||||
PROC_SQLPP_KEY
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_KEY(name) \
|
||||
[KEY is not implemented]
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_SQLPP_UNIQUE_INDEX \
|
||||
PROC_SQLPP_UNIQUE_INDEX
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_SQLPP_UNIQUE_INDEX(indexname, tblname, /* cols */ ...) \
|
||||
[UNIQUE INDEX is not implemented]
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__key_h
|
||||
#endif // _sqlpp__ppgen__colops__unique_index_h
|
@ -30,6 +30,6 @@
|
||||
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_varchar(str) \
|
||||
PROC_varchar
|
||||
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_varchar(str) \
|
||||
sqlpp::varchar
|
||||
::sqlpp::varchar
|
||||
|
||||
#endif // _sqlpp__ppgen__colops__varchar_h
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifndef _sqlpp__ppgen__tblops__character_set_h
|
||||
#define _sqlpp__ppgen__tblops__character_set_h
|
||||
|
||||
#define SQLPP_DECLARE_TABLE_GET_PROC_LAZY_SQLPP_CHARACTER_SET(str) \
|
||||
#define SQLPP_DECLARE_TABLE_GET_PROC_LAZY_SQLPP_CHARACTER_SET \
|
||||
PROC_SQLPP_CHARACTER_SET
|
||||
#define SQLPP_DECLARE_TABLE_GEN_PROC_SQLPP_CHARACTER_SET(str) \
|
||||
[CHARACTER_SET is not implemented]
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifndef _sqlpp__ppgen__tblops__comment_h
|
||||
#define _sqlpp__ppgen__tblops__comment_h
|
||||
|
||||
#define SQLPP_DECLARE_TABLE_GET_TRAITS_LAZY_SQLPP_COMMENT(str) \
|
||||
#define SQLPP_DECLARE_TABLE_GET_TRAITS_LAZY_SQLPP_COMMENT \
|
||||
PROC_SQLPP_COMMENT
|
||||
#define SQLPP_DECLARE_TABLE_GEN_TRAITS_PROC_SQLPP_COMMENT(str) \
|
||||
[COMMENT is not implemented]
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifndef _sqlpp__ppgen__tblops__default_h
|
||||
#define _sqlpp__ppgen__tblops__default_h
|
||||
|
||||
#define SQLPP_DECLARE_TABLE_GET_TRAITS_LAZY_SQLPP_DEFAULT(value) \
|
||||
#define SQLPP_DECLARE_TABLE_GET_TRAITS_LAZY_SQLPP_DEFAULT \
|
||||
PROC_SQLPP_DEFAULT
|
||||
#define SQLPP_DECLARE_TABLE_GEN_TRAITS_PROC_SQLPP_DEFAULT(...) \
|
||||
[DEFAULT is not implemented]
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifndef _sqlpp__ppgen__tblops__engine_h
|
||||
#define _sqlpp__ppgen__tblops__engine_h
|
||||
|
||||
#define SQLPP_DECLARE_TABLE_GET_PROC_LAZY_SQLPP_ENGINE(str) \
|
||||
#define SQLPP_DECLARE_TABLE_GET_PROC_LAZY_SQLPP_ENGINE \
|
||||
PROC_SQLPP_ENGINE
|
||||
#define SQLPP_DECLARE_TABLE_GEN_PROC_SQLPP_ENGINE(str) \
|
||||
[ENGINE is not implemented]
|
||||
|
Loading…
Reference in New Issue
Block a user