custom-macros.hh
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1348k
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(6, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_value_list<Manip>& obj) {
- s << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.manip << obj.obj->##I6;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_field_list<Manip>& obj) {
- s << obj.manip << obj.obj->names[0] << obj.delem;
- s << obj.manip << obj.obj->names[1] << obj.delem;
- s << obj.manip << obj.obj->names[2] << obj.delem;
- s << obj.manip << obj.obj->names[3] << obj.delem;
- s << obj.manip << obj.obj->names[4] << obj.delem;
- s << obj.manip << obj.obj->names[5];
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_equal_list<Manip>& obj) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_value_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I6;
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_field_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->names[0];
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[1];
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[2];
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[3];
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[4];
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[5];
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_equal_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6;
- }
- return s;
- }
- template <class Manip>
- inline NAME##_value_list<Manip> NAME##::value_list(cchar *d, Manip m) const {
- return NAME##_value_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_field_list<Manip> NAME##::field_list(cchar *d, Manip m) const {
- return NAME##_field_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m) const {
- return NAME##_equal_list<Manip> (this, d, c, m);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip>
- NAME##::value_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, value, NUM);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip>
- NAME##::field_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, field, NUM);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip>
- NAME##::equal_list(cchar *d, cchar *c, Manip m, sql_cmp_type sc) const {
- sql_compare_type_defe_##CMP (NAME, equal, NUM);
- }
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- inline void NAME##::set (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_basic_6(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6)
- sql_create_basic_c_order_6(NAME, CMP, CONTR, T1, I1, 0, T2, I2, 1, T3, I3, 2, T4, I4, 3, T5, I5, 4, T6, I6, 5)
- #define sql_create_6(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6)
- sql_create_complete_6(NAME, CMP, CONTR, T1, I1, #I1, 0, T2, I2, #I2, 1, T3, I3, #I3, 2, T4, I4, #I4, 3, T5, I5, #I5, 4, T6, I6, #I6, 5)
- #define sql_create_c_order_6(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6)
- sql_create_complete_6(NAME, CMP, CONTR, T1, I1, #I1, O1, T2, I2, #I2, O2, T3, I3, #I3, O3, T4, I4, #I4, O4, T5, I5, #I5, O5, T6, I6, #I6, O6)
- #define sql_create_c_names_6(NAME, CMP, CONTR, T1, I1, N1, T2, I2, N2, T3, I3, N3, T4, I4, N4, T5, I5, N5, T6, I6, N6)
- sql_create_complete_6(NAME, CMP, CONTR, T1, I1, N1, 0, T2, I2, N2, 1, T3, I3, N3, 2, T4, I4, N4, 3, T5, I5, N5, 4, T6, I6, N6, 5)
- // ---------------------------------------------------
- // End Create 6
- // ---------------------------------------------------
- // ---------------------------------------------------
- // Begin Create 7
- // ---------------------------------------------------
- #define sql_create_basic_c_order_7(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7)
- struct NAME;
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- NAME () {}
- NAME (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- };
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_complete_7(NAME, CMP, CONTR, T1, I1, N1, O1, T2, I2, N2, O2, T3, I3, N3, O3, T4, I4, N4, O4, T5, I5, N5, O5, T6, I6, N6, O6, T7, I7, N7, O7)
- struct NAME;
- enum NAME##_enum {
- NAME##_##I1,
- NAME##_##I2,
- NAME##_##I3,
- NAME##_##I4,
- NAME##_##I5,
- NAME##_##I6,
- NAME##_##I7
- ,NAME##_NULL
- };
- template <class Manip>
- class NAME##_value_list {
- /*friend ostream& operator << <> (ostream&, const NAME##_value_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_value_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_##field_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_field_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_field_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_equal_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_equal_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- NAME##_equal_list (const NAME *o, cchar *d, cchar *c, Manip m)
- : obj(o), delem(d), comp(c), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_value_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_value_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_value_list () {if (del_vector) delete include;}
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m ,vector<bool>)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_field_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_field_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_field_list () {if (del_vector) delete include;}
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_equal_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_equal_list<Manip>&); */
- public:
- const NAME *obj;
- vector<bool> *include;
- bool del_vector;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- ~##NAME##_##cus_equal_list () {if (del_vector) delete include;}
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), comp(c), manip(m) {}
- };
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- NAME () {}
- NAME (const MysqlRow &row);
- void set (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- sql_construct_define_##CONTR(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- static char *names[];
- static char *_table;
- static char *& table() {return _table;}
- /* cus_data */
- NAME##_cus_value_list<quote_type0> value_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_value_list<quote_type0> value_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_value_list<quote_type0> value_list(vector<bool> *i) const {
- return value_list(",", mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(sql_cmp_type sc) const {
- return value_list(",", mysql_quote, sc);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- vector<bool> *i) const {
- return value_list(d, mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- sql_cmp_type sc) const {
- return value_list(d, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus field */
- NAME##_cus_field_list<do_nothing_type0> field_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(vector<bool> *i) const {
- return field_list(",", mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(sql_cmp_type sc) const
- {
- return field_list(",", mysql_do_nothing, sc);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- vector<bool> *i) const {
- return field_list(d, mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- sql_cmp_type sc) const {
- return field_list(d, mysql_do_nothing, sc);
- }
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus equal */
- NAME##_cus_equal_list<quote_type0> equal_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(vector<bool> *i) const {
- return equal_list(",", " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(sql_cmp_type sc) const {
- return equal_list(",", " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- vector<bool> *i) const {
- return equal_list(d, " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- sql_cmp_type sc) const {
- return equal_list(d, " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- vector<bool> *i) const {
- return equal_list(d, c, mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- sql_cmp_type sc) const {
- return equal_list(d, c, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- sql_cmp_type sc) const;
- NAME##_value_list<quote_type0> value_list() const {
- return value_list(",", mysql_quote);}
- NAME##_value_list<quote_type0> value_list(cchar *d) const {
- return value_list(d, mysql_quote);}
- template <class Manip>
- NAME##_value_list<Manip> value_list(cchar *d, Manip m) const;
- NAME##_field_list<do_nothing_type0> field_list() const {
- return field_list(",", mysql_do_nothing);}
- NAME##_field_list<do_nothing_type0> field_list(cchar *d) const {
- return field_list(d, mysql_do_nothing);}
- template <class Manip>
- NAME##_field_list<Manip> field_list(cchar *d, Manip m) const;
- NAME##_equal_list<quote_type0> equal_list(cchar *d = ",",
- cchar *c = " = ") const{
- return equal_list(d, c, mysql_quote);}
- template <class Manip>
- NAME##_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m) const;
- };
- char *##NAME##::names[] = {
- N1 ,
- N2 ,
- N3 ,
- N4 ,
- N5 ,
- N6 ,
- N7
- };
- char *##NAME##::_table = #NAME ;
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7)
- {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(7, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- }
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(7, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(7, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(7, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(7, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(7, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_value_list<Manip>& obj) {
- s << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.manip << obj.obj->##I7;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_field_list<Manip>& obj) {
- s << obj.manip << obj.obj->names[0] << obj.delem;
- s << obj.manip << obj.obj->names[1] << obj.delem;
- s << obj.manip << obj.obj->names[2] << obj.delem;
- s << obj.manip << obj.obj->names[3] << obj.delem;
- s << obj.manip << obj.obj->names[4] << obj.delem;
- s << obj.manip << obj.obj->names[5] << obj.delem;
- s << obj.manip << obj.obj->names[6];
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_equal_list<Manip>& obj) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.obj->names[6] << obj.comp << obj.manip << obj.obj->##I7;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_value_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I6;
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I7;
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_field_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->names[0];
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[1];
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[2];
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[3];
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[4];
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[5];
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[6];
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_equal_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6;
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.obj->names[6] << obj.comp << obj.manip << obj.obj->##I7;
- }
- return s;
- }
- template <class Manip>
- inline NAME##_value_list<Manip> NAME##::value_list(cchar *d, Manip m) const {
- return NAME##_value_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_field_list<Manip> NAME##::field_list(cchar *d, Manip m) const {
- return NAME##_field_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m) const {
- return NAME##_equal_list<Manip> (this, d, c, m);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6, i7);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6, i7);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip>
- NAME##::value_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, value, NUM);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip>
- NAME##::field_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, field, NUM);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip>
- NAME##::equal_list(cchar *d, cchar *c, Manip m, sql_cmp_type sc) const {
- sql_compare_type_defe_##CMP (NAME, equal, NUM);
- }
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- inline void NAME##::set (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_basic_7(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7)
- sql_create_basic_c_order_7(NAME, CMP, CONTR, T1, I1, 0, T2, I2, 1, T3, I3, 2, T4, I4, 3, T5, I5, 4, T6, I6, 5, T7, I7, 6)
- #define sql_create_7(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7)
- sql_create_complete_7(NAME, CMP, CONTR, T1, I1, #I1, 0, T2, I2, #I2, 1, T3, I3, #I3, 2, T4, I4, #I4, 3, T5, I5, #I5, 4, T6, I6, #I6, 5, T7, I7, #I7, 6)
- #define sql_create_c_order_7(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7)
- sql_create_complete_7(NAME, CMP, CONTR, T1, I1, #I1, O1, T2, I2, #I2, O2, T3, I3, #I3, O3, T4, I4, #I4, O4, T5, I5, #I5, O5, T6, I6, #I6, O6, T7, I7, #I7, O7)
- #define sql_create_c_names_7(NAME, CMP, CONTR, T1, I1, N1, T2, I2, N2, T3, I3, N3, T4, I4, N4, T5, I5, N5, T6, I6, N6, T7, I7, N7)
- sql_create_complete_7(NAME, CMP, CONTR, T1, I1, N1, 0, T2, I2, N2, 1, T3, I3, N3, 2, T4, I4, N4, 3, T5, I5, N5, 4, T6, I6, N6, 5, T7, I7, N7, 6)
- // ---------------------------------------------------
- // End Create 7
- // ---------------------------------------------------
- // ---------------------------------------------------
- // Begin Create 8
- // ---------------------------------------------------
- #define sql_create_basic_c_order_8(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7, T8, I8, O8)
- struct NAME;
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- T8 I8;
- NAME () {}
- NAME (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- };
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- s->##I8 = row[ O8 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, I8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_complete_8(NAME, CMP, CONTR, T1, I1, N1, O1, T2, I2, N2, O2, T3, I3, N3, O3, T4, I4, N4, O4, T5, I5, N5, O5, T6, I6, N6, O6, T7, I7, N7, O7, T8, I8, N8, O8)
- struct NAME;
- enum NAME##_enum {
- NAME##_##I1,
- NAME##_##I2,
- NAME##_##I3,
- NAME##_##I4,
- NAME##_##I5,
- NAME##_##I6,
- NAME##_##I7,
- NAME##_##I8
- ,NAME##_NULL
- };
- template <class Manip>
- class NAME##_value_list {
- /*friend ostream& operator << <> (ostream&, const NAME##_value_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_value_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_##field_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_field_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_field_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_equal_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_equal_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- NAME##_equal_list (const NAME *o, cchar *d, cchar *c, Manip m)
- : obj(o), delem(d), comp(c), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_value_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_value_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_value_list () {if (del_vector) delete include;}
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m ,vector<bool>)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_field_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_field_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_field_list () {if (del_vector) delete include;}
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_equal_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_equal_list<Manip>&); */
- public:
- const NAME *obj;
- vector<bool> *include;
- bool del_vector;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- ~##NAME##_##cus_equal_list () {if (del_vector) delete include;}
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), comp(c), manip(m) {}
- };
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- T8 I8;
- NAME () {}
- NAME (const MysqlRow &row);
- void set (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- sql_construct_define_##CONTR(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- static char *names[];
- static char *_table;
- static char *& table() {return _table;}
- /* cus_data */
- NAME##_cus_value_list<quote_type0> value_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_value_list<quote_type0> value_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_value_list<quote_type0> value_list(vector<bool> *i) const {
- return value_list(",", mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(sql_cmp_type sc) const {
- return value_list(",", mysql_quote, sc);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- vector<bool> *i) const {
- return value_list(d, mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- sql_cmp_type sc) const {
- return value_list(d, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus field */
- NAME##_cus_field_list<do_nothing_type0> field_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(vector<bool> *i) const {
- return field_list(",", mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(sql_cmp_type sc) const
- {
- return field_list(",", mysql_do_nothing, sc);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- vector<bool> *i) const {
- return field_list(d, mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- sql_cmp_type sc) const {
- return field_list(d, mysql_do_nothing, sc);
- }
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus equal */
- NAME##_cus_equal_list<quote_type0> equal_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(vector<bool> *i) const {
- return equal_list(",", " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(sql_cmp_type sc) const {
- return equal_list(",", " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- vector<bool> *i) const {
- return equal_list(d, " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- sql_cmp_type sc) const {
- return equal_list(d, " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- vector<bool> *i) const {
- return equal_list(d, c, mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- sql_cmp_type sc) const {
- return equal_list(d, c, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- sql_cmp_type sc) const;
- NAME##_value_list<quote_type0> value_list() const {
- return value_list(",", mysql_quote);}
- NAME##_value_list<quote_type0> value_list(cchar *d) const {
- return value_list(d, mysql_quote);}
- template <class Manip>
- NAME##_value_list<Manip> value_list(cchar *d, Manip m) const;
- NAME##_field_list<do_nothing_type0> field_list() const {
- return field_list(",", mysql_do_nothing);}
- NAME##_field_list<do_nothing_type0> field_list(cchar *d) const {
- return field_list(d, mysql_do_nothing);}
- template <class Manip>
- NAME##_field_list<Manip> field_list(cchar *d, Manip m) const;
- NAME##_equal_list<quote_type0> equal_list(cchar *d = ",",
- cchar *c = " = ") const{
- return equal_list(d, c, mysql_quote);}
- template <class Manip>
- NAME##_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m) const;
- };
- char *##NAME##::names[] = {
- N1 ,
- N2 ,
- N3 ,
- N4 ,
- N5 ,
- N6 ,
- N7 ,
- N8
- };
- char *##NAME##::_table = #NAME ;
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8)
- {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(8, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- }
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(8, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(8, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(8, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(8, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(8, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_value_list<Manip>& obj) {
- s << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.manip << obj.obj->##I7 << obj.delem;
- s << obj.manip << obj.obj->##I8;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_field_list<Manip>& obj) {
- s << obj.manip << obj.obj->names[0] << obj.delem;
- s << obj.manip << obj.obj->names[1] << obj.delem;
- s << obj.manip << obj.obj->names[2] << obj.delem;
- s << obj.manip << obj.obj->names[3] << obj.delem;
- s << obj.manip << obj.obj->names[4] << obj.delem;
- s << obj.manip << obj.obj->names[5] << obj.delem;
- s << obj.manip << obj.obj->names[6] << obj.delem;
- s << obj.manip << obj.obj->names[7];
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_equal_list<Manip>& obj) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.obj->names[6] << obj.comp << obj.manip << obj.obj->##I7 << obj.delem;
- s << obj.obj->names[7] << obj.comp << obj.manip << obj.obj->##I8;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_value_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I6;
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I7;
- before = true;
- }
- if ((*obj.include)[7]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I8;
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_field_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->names[0];
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[1];
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[2];
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[3];
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[4];
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[5];
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[6];
- before = true;
- }
- if ((*obj.include)[7]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[7];
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_equal_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6;
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.obj->names[6] << obj.comp << obj.manip << obj.obj->##I7;
- before = true;
- }
- if ((*obj.include)[7]) {
- if (before) s << obj.delem;
- s << obj.obj->names[7] << obj.comp << obj.manip << obj.obj->##I8;
- }
- return s;
- }
- template <class Manip>
- inline NAME##_value_list<Manip> NAME##::value_list(cchar *d, Manip m) const {
- return NAME##_value_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_field_list<Manip> NAME##::field_list(cchar *d, Manip m) const {
- return NAME##_field_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m) const {
- return NAME##_equal_list<Manip> (this, d, c, m);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6, i7, i8);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip>
- NAME##::value_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, value, NUM);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip>
- NAME##::field_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, field, NUM);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip>
- NAME##::equal_list(cchar *d, cchar *c, Manip m, sql_cmp_type sc) const {
- sql_compare_type_defe_##CMP (NAME, equal, NUM);
- }
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- s->##I8 = row[ O8 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- inline void NAME##::set (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, I8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_basic_8(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8)
- sql_create_basic_c_order_8(NAME, CMP, CONTR, T1, I1, 0, T2, I2, 1, T3, I3, 2, T4, I4, 3, T5, I5, 4, T6, I6, 5, T7, I7, 6, T8, I8, 7)
- #define sql_create_8(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8)
- sql_create_complete_8(NAME, CMP, CONTR, T1, I1, #I1, 0, T2, I2, #I2, 1, T3, I3, #I3, 2, T4, I4, #I4, 3, T5, I5, #I5, 4, T6, I6, #I6, 5, T7, I7, #I7, 6, T8, I8, #I8, 7)
- #define sql_create_c_order_8(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7, T8, I8, O8)
- sql_create_complete_8(NAME, CMP, CONTR, T1, I1, #I1, O1, T2, I2, #I2, O2, T3, I3, #I3, O3, T4, I4, #I4, O4, T5, I5, #I5, O5, T6, I6, #I6, O6, T7, I7, #I7, O7, T8, I8, #I8, O8)
- #define sql_create_c_names_8(NAME, CMP, CONTR, T1, I1, N1, T2, I2, N2, T3, I3, N3, T4, I4, N4, T5, I5, N5, T6, I6, N6, T7, I7, N7, T8, I8, N8)
- sql_create_complete_8(NAME, CMP, CONTR, T1, I1, N1, 0, T2, I2, N2, 1, T3, I3, N3, 2, T4, I4, N4, 3, T5, I5, N5, 4, T6, I6, N6, 5, T7, I7, N7, 6, T8, I8, N8, 7)
- // ---------------------------------------------------
- // End Create 8
- // ---------------------------------------------------
- // ---------------------------------------------------
- // Begin Create 9
- // ---------------------------------------------------
- #define sql_create_basic_c_order_9(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7, T8, I8, O8, T9, I9, O9)
- struct NAME;
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- T8 I8;
- T9 I9;
- NAME () {}
- NAME (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- };
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- s->##I8 = row[ O8 ];
- s->##I9 = row[ O9 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, I8, I9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_complete_9(NAME, CMP, CONTR, T1, I1, N1, O1, T2, I2, N2, O2, T3, I3, N3, O3, T4, I4, N4, O4, T5, I5, N5, O5, T6, I6, N6, O6, T7, I7, N7, O7, T8, I8, N8, O8, T9, I9, N9, O9)
- struct NAME;
- enum NAME##_enum {
- NAME##_##I1,
- NAME##_##I2,
- NAME##_##I3,
- NAME##_##I4,
- NAME##_##I5,
- NAME##_##I6,
- NAME##_##I7,
- NAME##_##I8,
- NAME##_##I9
- ,NAME##_NULL
- };
- template <class Manip>
- class NAME##_value_list {
- /*friend ostream& operator << <> (ostream&, const NAME##_value_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_value_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_##field_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_field_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_field_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_equal_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_equal_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- NAME##_equal_list (const NAME *o, cchar *d, cchar *c, Manip m)
- : obj(o), delem(d), comp(c), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_value_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_value_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_value_list () {if (del_vector) delete include;}
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m ,vector<bool>)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_field_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_field_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_field_list () {if (del_vector) delete include;}
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_equal_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_equal_list<Manip>&); */
- public:
- const NAME *obj;
- vector<bool> *include;
- bool del_vector;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- ~##NAME##_##cus_equal_list () {if (del_vector) delete include;}
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), comp(c), manip(m) {}
- };
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- T8 I8;
- T9 I9;
- NAME () {}
- NAME (const MysqlRow &row);
- void set (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- sql_construct_define_##CONTR(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- static char *names[];
- static char *_table;
- static char *& table() {return _table;}
- /* cus_data */
- NAME##_cus_value_list<quote_type0> value_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_value_list<quote_type0> value_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_value_list<quote_type0> value_list(vector<bool> *i) const {
- return value_list(",", mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(sql_cmp_type sc) const {
- return value_list(",", mysql_quote, sc);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- vector<bool> *i) const {
- return value_list(d, mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- sql_cmp_type sc) const {
- return value_list(d, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus field */
- NAME##_cus_field_list<do_nothing_type0> field_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(vector<bool> *i) const {
- return field_list(",", mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(sql_cmp_type sc) const
- {
- return field_list(",", mysql_do_nothing, sc);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- vector<bool> *i) const {
- return field_list(d, mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- sql_cmp_type sc) const {
- return field_list(d, mysql_do_nothing, sc);
- }
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus equal */
- NAME##_cus_equal_list<quote_type0> equal_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(vector<bool> *i) const {
- return equal_list(",", " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(sql_cmp_type sc) const {
- return equal_list(",", " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- vector<bool> *i) const {
- return equal_list(d, " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- sql_cmp_type sc) const {
- return equal_list(d, " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- vector<bool> *i) const {
- return equal_list(d, c, mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- sql_cmp_type sc) const {
- return equal_list(d, c, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- sql_cmp_type sc) const;
- NAME##_value_list<quote_type0> value_list() const {
- return value_list(",", mysql_quote);}
- NAME##_value_list<quote_type0> value_list(cchar *d) const {
- return value_list(d, mysql_quote);}
- template <class Manip>
- NAME##_value_list<Manip> value_list(cchar *d, Manip m) const;
- NAME##_field_list<do_nothing_type0> field_list() const {
- return field_list(",", mysql_do_nothing);}
- NAME##_field_list<do_nothing_type0> field_list(cchar *d) const {
- return field_list(d, mysql_do_nothing);}
- template <class Manip>
- NAME##_field_list<Manip> field_list(cchar *d, Manip m) const;
- NAME##_equal_list<quote_type0> equal_list(cchar *d = ",",
- cchar *c = " = ") const{
- return equal_list(d, c, mysql_quote);}
- template <class Manip>
- NAME##_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m) const;
- };
- char *##NAME##::names[] = {
- N1 ,
- N2 ,
- N3 ,
- N4 ,
- N5 ,
- N6 ,
- N7 ,
- N8 ,
- N9
- };
- char *##NAME##::_table = #NAME ;
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9)
- {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(9, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- if (i9) (*include)[8]=true;
- }
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(9, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- if (i9 == NAME##_NULL) return;
- (*include)[i9]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(9, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- if (i9) (*include)[8]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(9, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- if (i9 == NAME##_NULL) return;
- (*include)[i9]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(9, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- if (i9) (*include)[8]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(9, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- if (i9 == NAME##_NULL) return;
- (*include)[i9]=true;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_value_list<Manip>& obj) {
- s << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.manip << obj.obj->##I7 << obj.delem;
- s << obj.manip << obj.obj->##I8 << obj.delem;
- s << obj.manip << obj.obj->##I9;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_field_list<Manip>& obj) {
- s << obj.manip << obj.obj->names[0] << obj.delem;
- s << obj.manip << obj.obj->names[1] << obj.delem;
- s << obj.manip << obj.obj->names[2] << obj.delem;
- s << obj.manip << obj.obj->names[3] << obj.delem;
- s << obj.manip << obj.obj->names[4] << obj.delem;
- s << obj.manip << obj.obj->names[5] << obj.delem;
- s << obj.manip << obj.obj->names[6] << obj.delem;
- s << obj.manip << obj.obj->names[7] << obj.delem;
- s << obj.manip << obj.obj->names[8];
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_equal_list<Manip>& obj) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.obj->names[6] << obj.comp << obj.manip << obj.obj->##I7 << obj.delem;
- s << obj.obj->names[7] << obj.comp << obj.manip << obj.obj->##I8 << obj.delem;
- s << obj.obj->names[8] << obj.comp << obj.manip << obj.obj->##I9;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_value_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I6;
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I7;
- before = true;
- }
- if ((*obj.include)[7]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I8;
- before = true;
- }
- if ((*obj.include)[8]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->##I9;
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_field_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.manip << obj.obj->names[0];
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[1];
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[2];
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[3];
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[4];
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[5];
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[6];
- before = true;
- }
- if ((*obj.include)[7]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[7];
- before = true;
- }
- if ((*obj.include)[8]) {
- if (before) s << obj.delem;
- s << obj.manip << obj.obj->names[8];
- }
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_cus_equal_list<Manip>& obj) {
- bool before = false;
- if ((*obj.include)[0]) {
- s << obj.obj->names[0] << obj.comp << obj.manip << obj.obj->##I1;
- before = true;
- }
- if ((*obj.include)[1]) {
- if (before) s << obj.delem;
- s << obj.obj->names[1] << obj.comp << obj.manip << obj.obj->##I2;
- before = true;
- }
- if ((*obj.include)[2]) {
- if (before) s << obj.delem;
- s << obj.obj->names[2] << obj.comp << obj.manip << obj.obj->##I3;
- before = true;
- }
- if ((*obj.include)[3]) {
- if (before) s << obj.delem;
- s << obj.obj->names[3] << obj.comp << obj.manip << obj.obj->##I4;
- before = true;
- }
- if ((*obj.include)[4]) {
- if (before) s << obj.delem;
- s << obj.obj->names[4] << obj.comp << obj.manip << obj.obj->##I5;
- before = true;
- }
- if ((*obj.include)[5]) {
- if (before) s << obj.delem;
- s << obj.obj->names[5] << obj.comp << obj.manip << obj.obj->##I6;
- before = true;
- }
- if ((*obj.include)[6]) {
- if (before) s << obj.delem;
- s << obj.obj->names[6] << obj.comp << obj.manip << obj.obj->##I7;
- before = true;
- }
- if ((*obj.include)[7]) {
- if (before) s << obj.delem;
- s << obj.obj->names[7] << obj.comp << obj.manip << obj.obj->##I8;
- before = true;
- }
- if ((*obj.include)[8]) {
- if (before) s << obj.delem;
- s << obj.obj->names[8] << obj.comp << obj.manip << obj.obj->##I9;
- }
- return s;
- }
- template <class Manip>
- inline NAME##_value_list<Manip> NAME##::value_list(cchar *d, Manip m) const {
- return NAME##_value_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_field_list<Manip> NAME##::field_list(cchar *d, Manip m) const {
- return NAME##_field_list<Manip> (this, d, m);
- }
- template <class Manip>
- inline NAME##_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m) const {
- return NAME##_equal_list<Manip> (this, d, c, m);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip> NAME##::value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9) const {
- return NAME##_cus_value_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip> NAME##::field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9) const {
- return NAME##_cus_field_list<Manip> (this, d, m, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip> NAME##::equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9) const {
- return NAME##_cus_equal_list<Manip> (this, d, c, m, i1, i2, i3, i4, i5, i6, i7, i8, i9);
- }
- template <class Manip>
- inline NAME##_cus_value_list<Manip>
- NAME##::value_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, value, NUM);
- }
- template <class Manip>
- inline NAME##_cus_field_list<Manip>
- NAME##::field_list(cchar *d, Manip m, sql_cmp_type sc) const {
- sql_compare_type_def_##CMP (NAME, field, NUM);
- }
- template <class Manip>
- inline NAME##_cus_equal_list<Manip>
- NAME##::equal_list(cchar *d, cchar *c, Manip m, sql_cmp_type sc) const {
- sql_compare_type_defe_##CMP (NAME, equal, NUM);
- }
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- s->##I8 = row[ O8 ];
- s->##I9 = row[ O9 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- inline void NAME##::set (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, I8, I9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_basic_9(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9)
- sql_create_basic_c_order_9(NAME, CMP, CONTR, T1, I1, 0, T2, I2, 1, T3, I3, 2, T4, I4, 3, T5, I5, 4, T6, I6, 5, T7, I7, 6, T8, I8, 7, T9, I9, 8)
- #define sql_create_9(NAME, CMP, CONTR, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9)
- sql_create_complete_9(NAME, CMP, CONTR, T1, I1, #I1, 0, T2, I2, #I2, 1, T3, I3, #I3, 2, T4, I4, #I4, 3, T5, I5, #I5, 4, T6, I6, #I6, 5, T7, I7, #I7, 6, T8, I8, #I8, 7, T9, I9, #I9, 8)
- #define sql_create_c_order_9(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7, T8, I8, O8, T9, I9, O9)
- sql_create_complete_9(NAME, CMP, CONTR, T1, I1, #I1, O1, T2, I2, #I2, O2, T3, I3, #I3, O3, T4, I4, #I4, O4, T5, I5, #I5, O5, T6, I6, #I6, O6, T7, I7, #I7, O7, T8, I8, #I8, O8, T9, I9, #I9, O9)
- #define sql_create_c_names_9(NAME, CMP, CONTR, T1, I1, N1, T2, I2, N2, T3, I3, N3, T4, I4, N4, T5, I5, N5, T6, I6, N6, T7, I7, N7, T8, I8, N8, T9, I9, N9)
- sql_create_complete_9(NAME, CMP, CONTR, T1, I1, N1, 0, T2, I2, N2, 1, T3, I3, N3, 2, T4, I4, N4, 3, T5, I5, N5, 4, T6, I6, N6, 5, T7, I7, N7, 6, T8, I8, N8, 7, T9, I9, N9, 8)
- // ---------------------------------------------------
- // End Create 9
- // ---------------------------------------------------
- // ---------------------------------------------------
- // Begin Create 10
- // ---------------------------------------------------
- #define sql_create_basic_c_order_10(NAME, CMP, CONTR, T1, I1, O1, T2, I2, O2, T3, I3, O3, T4, I4, O4, T5, I5, O5, T6, I6, O6, T7, I7, O7, T8, I8, O8, T9, I9, O9, T10, I10, O10)
- struct NAME;
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- T8 I8;
- T9 I9;
- T10 I10;
- NAME () {}
- NAME (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9, T10, I10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- };
- template <sql_dummy_type dummy>
- void populate_##NAME (NAME *s, const MysqlRow &row) {
- s->##I1 = row[ O1 ];
- s->##I2 = row[ O2 ];
- s->##I3 = row[ O3 ];
- s->##I4 = row[ O4 ];
- s->##I5 = row[ O5 ];
- s->##I6 = row[ O6 ];
- s->##I7 = row[ O7 ];
- s->##I8 = row[ O8 ];
- s->##I9 = row[ O9 ];
- s->##I10 = row[ O10 ];
- }
- inline NAME##::##NAME (const MysqlRow &row)
- {populate_##NAME##<sql_dummy>(this, row);}
- sql_COMPARE__##CMP##(NAME, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 )
- #define sql_create_complete_10(NAME, CMP, CONTR, T1, I1, N1, O1, T2, I2, N2, O2, T3, I3, N3, O3, T4, I4, N4, O4, T5, I5, N5, O5, T6, I6, N6, O6, T7, I7, N7, O7, T8, I8, N8, O8, T9, I9, N9, O9, T10, I10, N10, O10)
- struct NAME;
- enum NAME##_enum {
- NAME##_##I1,
- NAME##_##I2,
- NAME##_##I3,
- NAME##_##I4,
- NAME##_##I5,
- NAME##_##I6,
- NAME##_##I7,
- NAME##_##I8,
- NAME##_##I9,
- NAME##_##I10
- ,NAME##_NULL
- };
- template <class Manip>
- class NAME##_value_list {
- /*friend ostream& operator << <> (ostream&, const NAME##_value_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_value_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_##field_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_field_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- public:
- NAME##_field_list (const NAME *o, cchar *d, Manip m)
- : obj(o), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_equal_list {
- /* friend ostream& operator << <> (ostream&, const NAME##_equal_list&); */
- public:
- const NAME *obj;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- NAME##_equal_list (const NAME *o, cchar *d, cchar *c, Manip m)
- : obj(o), delem(d), comp(c), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_value_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_value_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_value_list () {if (del_vector) delete include;}
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9, bool i10);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9, ##NAME##_enum i10);
- NAME##_cus_value_list (const NAME *o, cchar *d, Manip m ,vector<bool>)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_field_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_field_list<Manip>&); */
- public:
- const NAME *obj;
- cchar *delem;
- Manip manip;
- vector<bool> *include;
- bool del_vector;
- public:
- ~##NAME##_cus_field_list () {if (del_vector) delete include;}
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9, bool i10);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9, ##NAME##_enum i10);
- NAME##_cus_field_list (const NAME *o, cchar *d, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), manip(m) {}
- };
- template <class Manip>
- class NAME##_cus_equal_list {
- /* friend ostream& operator << <> (ostream&,
- const NAME##_cus_equal_list<Manip>&); */
- public:
- const NAME *obj;
- vector<bool> *include;
- bool del_vector;
- cchar *delem;
- cchar *comp;
- Manip manip;
- public:
- ~##NAME##_##cus_equal_list () {if (del_vector) delete include;}
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9, bool i10);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9, ##NAME##_enum i10);
- NAME##_##cus_equal_list (const NAME *o, cchar *d, cchar *c, Manip m, vector<bool> *i)
- : obj(o), include(i), del_vector(false), delem(d), comp(c), manip(m) {}
- };
- template <sql_dummy_type dummy> int sql_compare_##NAME (const NAME &, const NAME &);
- struct NAME {
- T1 I1;
- T2 I2;
- T3 I3;
- T4 I4;
- T5 I5;
- T6 I6;
- T7 I7;
- T8 I8;
- T9 I9;
- T10 I10;
- NAME () {}
- NAME (const MysqlRow &row);
- void set (const MysqlRow &row);
- sql_compare_define_##CMP(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9, T10, I10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- sql_construct_define_##CONTR(NAME, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7, T8, I8, T9, I9, T10, I10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
- static char *names[];
- static char *_table;
- static char *& table() {return _table;}
- /* cus_data */
- NAME##_cus_value_list<quote_type0> value_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_value_list<quote_type0> value_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return value_list(",", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_value_list<quote_type0> value_list(vector<bool> *i) const {
- return value_list(",", mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(sql_cmp_type sc) const {
- return value_list(",", mysql_quote, sc);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return value_list(d, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- vector<bool> *i) const {
- return value_list(d, mysql_quote, i);
- }
- NAME##_cus_value_list<quote_type0> value_list(cchar *d,
- sql_cmp_type sc) const {
- return value_list(d, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_value_list<Manip> value_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus field */
- NAME##_cus_field_list<do_nothing_type0> field_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return field_list(",", mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(vector<bool> *i) const {
- return field_list(",", mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(sql_cmp_type sc) const
- {
- return field_list(",", mysql_do_nothing, sc);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return field_list(d, mysql_do_nothing, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- vector<bool> *i) const {
- return field_list(d, mysql_do_nothing, i);
- }
- NAME##_cus_field_list<do_nothing_type0> field_list(cchar *d,
- sql_cmp_type sc) const {
- return field_list(d, mysql_do_nothing, sc);
- }
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_field_list<Manip> field_list(cchar *d, Manip m,
- sql_cmp_type sc) const;
- /* cus equal */
- NAME##_cus_equal_list<quote_type0> equal_list(bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return equal_list(",", " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(vector<bool> *i) const {
- return equal_list(",", " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(sql_cmp_type sc) const {
- return equal_list(",", " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return equal_list(d, " = ", mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- vector<bool> *i) const {
- return equal_list(d, " = ", mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d,
- sql_cmp_type sc) const {
- return equal_list(d, " = ", mysql_quote, sc);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const {
- return equal_list(d, c, mysql_quote, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- vector<bool> *i) const {
- return equal_list(d, c, mysql_quote, i);
- }
- NAME##_cus_equal_list<quote_type0> equal_list(cchar *d, cchar *c,
- sql_cmp_type sc) const {
- return equal_list(d, c, mysql_quote, sc);
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- bool i1, bool i2 = false, bool i3 = false, bool i4 = false, bool i5 = false, bool i6 = false, bool i7 = false, bool i8 = false, bool i9 = false, bool i10 = false) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- ##NAME##_enum i1, ##NAME##_enum i2 = ##NAME##_NULL, ##NAME##_enum i3 = ##NAME##_NULL, ##NAME##_enum i4 = ##NAME##_NULL, ##NAME##_enum i5 = ##NAME##_NULL, ##NAME##_enum i6 = ##NAME##_NULL, ##NAME##_enum i7 = ##NAME##_NULL, ##NAME##_enum i8 = ##NAME##_NULL, ##NAME##_enum i9 = ##NAME##_NULL, ##NAME##_enum i10 = ##NAME##_NULL) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- vector<bool> *i) const;
- template <class Manip>
- NAME##_cus_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m,
- sql_cmp_type sc) const;
- NAME##_value_list<quote_type0> value_list() const {
- return value_list(",", mysql_quote);}
- NAME##_value_list<quote_type0> value_list(cchar *d) const {
- return value_list(d, mysql_quote);}
- template <class Manip>
- NAME##_value_list<Manip> value_list(cchar *d, Manip m) const;
- NAME##_field_list<do_nothing_type0> field_list() const {
- return field_list(",", mysql_do_nothing);}
- NAME##_field_list<do_nothing_type0> field_list(cchar *d) const {
- return field_list(d, mysql_do_nothing);}
- template <class Manip>
- NAME##_field_list<Manip> field_list(cchar *d, Manip m) const;
- NAME##_equal_list<quote_type0> equal_list(cchar *d = ",",
- cchar *c = " = ") const{
- return equal_list(d, c, mysql_quote);}
- template <class Manip>
- NAME##_equal_list<Manip> equal_list(cchar *d, cchar *c, Manip m) const;
- };
- char *##NAME##::names[] = {
- N1 ,
- N2 ,
- N3 ,
- N4 ,
- N5 ,
- N6 ,
- N7 ,
- N8 ,
- N9 ,
- N10
- };
- char *##NAME##::_table = #NAME ;
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9, bool i10)
- {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(10, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- if (i9) (*include)[8]=true;
- if (i10) (*include)[9]=true;
- }
- template <class Manip>
- NAME##_cus_value_list<Manip>::NAME##_cus_value_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9, ##NAME##_enum i10) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(10, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- if (i9 == NAME##_NULL) return;
- (*include)[i9]=true;
- if (i10 == NAME##_NULL) return;
- (*include)[i10]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9, bool i10) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(10, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- if (i9) (*include)[8]=true;
- if (i10) (*include)[9]=true;
- }
- template <class Manip>
- NAME##_cus_field_list<Manip>::NAME##_cus_field_list
- (const NAME *o, cchar *d, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9, ##NAME##_enum i10) {
- delem = d;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(10, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- if (i9 == NAME##_NULL) return;
- (*include)[i9]=true;
- if (i10 == NAME##_NULL) return;
- (*include)[i10]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, bool i1, bool i2, bool i3, bool i4, bool i5, bool i6, bool i7, bool i8, bool i9, bool i10) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(10, false);
- if (i1) (*include)[0]=true;
- if (i2) (*include)[1]=true;
- if (i3) (*include)[2]=true;
- if (i4) (*include)[3]=true;
- if (i5) (*include)[4]=true;
- if (i6) (*include)[5]=true;
- if (i7) (*include)[6]=true;
- if (i8) (*include)[7]=true;
- if (i9) (*include)[8]=true;
- if (i10) (*include)[9]=true;
- }
- template <class Manip>
- NAME##_cus_equal_list<Manip>::NAME##_cus_equal_list
- (const NAME *o, cchar *d, cchar *c, Manip m, ##NAME##_enum i1, ##NAME##_enum i2, ##NAME##_enum i3, ##NAME##_enum i4, ##NAME##_enum i5, ##NAME##_enum i6, ##NAME##_enum i7, ##NAME##_enum i8, ##NAME##_enum i9, ##NAME##_enum i10) {
- delem = d;
- comp = c;
- manip = m;
- del_vector = true;
- obj = o;
- include = new vector<bool>(10, false);
- if (i1 == NAME##_NULL) return;
- (*include)[i1]=true;
- if (i2 == NAME##_NULL) return;
- (*include)[i2]=true;
- if (i3 == NAME##_NULL) return;
- (*include)[i3]=true;
- if (i4 == NAME##_NULL) return;
- (*include)[i4]=true;
- if (i5 == NAME##_NULL) return;
- (*include)[i5]=true;
- if (i6 == NAME##_NULL) return;
- (*include)[i6]=true;
- if (i7 == NAME##_NULL) return;
- (*include)[i7]=true;
- if (i8 == NAME##_NULL) return;
- (*include)[i8]=true;
- if (i9 == NAME##_NULL) return;
- (*include)[i9]=true;
- if (i10 == NAME##_NULL) return;
- (*include)[i10]=true;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_value_list<Manip>& obj) {
- s << obj.manip << obj.obj->##I1 << obj.delem;
- s << obj.manip << obj.obj->##I2 << obj.delem;
- s << obj.manip << obj.obj->##I3 << obj.delem;
- s << obj.manip << obj.obj->##I4 << obj.delem;
- s << obj.manip << obj.obj->##I5 << obj.delem;
- s << obj.manip << obj.obj->##I6 << obj.delem;
- s << obj.manip << obj.obj->##I7 << obj.delem;
- s << obj.manip << obj.obj->##I8 << obj.delem;
- s << obj.manip << obj.obj->##I9 << obj.delem;
- s << obj.manip << obj.obj->##I10;
- return s;
- }
- template <class Manip>
- ostream& operator << (ostream& s, const NAME##_field_list<Manip>& obj) {
- s << obj.manip << obj.obj->names[0] << obj.delem;
- s << obj.manip << obj.obj->names[1] << obj.delem;
- s << obj.manip << obj.obj->names[2] << obj.delem;
- s << obj.manip << obj.obj->names[3] << obj.delem;
- s << obj.manip << obj.obj->names[4] << obj.delem;
- s << obj.manip << obj.obj->names[5] << obj.delem;
- s << obj.manip << obj.obj->names[6] << obj.delem;
- s << obj.manip << obj.obj->names[7] << obj.delem;