blob: a669933d6a8780bc35b4c9ff339e9919ba66f3a4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
// file : odb/relational/common-query.hxx
// copyright : Copyright (c) 2009-2018 Code Synthesis Tools CC
// license : GNU GPL v3; see accompanying LICENSE file
#ifndef ODB_RELATIONAL_COMMON_QUERY_HXX
#define ODB_RELATIONAL_COMMON_QUERY_HXX
#include <odb/relational/common.hxx>
namespace relational
{
//
//
struct query_alias_traits: ::query_alias_traits, virtual context
{
typedef query_alias_traits base_impl;
query_alias_traits (base const& x): base (x) {}
virtual void
generate_decl_body ();
virtual void
generate_def (semantics::data_member&, semantics::class_&);
virtual void
generate_def (string const& tag, semantics::class_&, string const& alias);
};
//
//
struct query_columns_base: ::query_columns_base, virtual context
{
typedef query_columns_base base_impl;
query_columns_base (base const& x): base (x) {const_ = "const ";}
};
//
//
struct query_columns: ::query_columns, virtual context
{
typedef query_columns base_impl;
query_columns (base const& x): base (x) {const_ = "const ";}
virtual string
database_type_id (semantics::data_member&) = 0;
virtual void
column_ctor (string const& type, string const& name, string const& base);
virtual void
column_ctor_args_extra (semantics::data_member&);
virtual void
column_common (semantics::data_member&,
string const& type,
string const& column,
string const& suffix);
};
}
#endif // ODB_RELATIONAL_COMMON_QUERY_HXX
|