aboutsummaryrefslogtreecommitdiff
path: root/common/relationship-query/test.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2013-12-04 11:30:33 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2013-12-04 11:30:33 +0200
commit4f22837bda784e29f17750c8f1d623b40c1093d4 (patch)
tree136b42d29c180fb52a1327ea61894025770d0f90 /common/relationship-query/test.hxx
parent33a8e17efb8c622413a861047c5c4589a9828f62 (diff)
Implement on_delete pragma for object pointers
Translates to the ON DELETE SQL clause.
Diffstat (limited to 'common/relationship-query/test.hxx')
-rw-r--r--common/relationship-query/test.hxx151
1 files changed, 0 insertions, 151 deletions
diff --git a/common/relationship-query/test.hxx b/common/relationship-query/test.hxx
deleted file mode 100644
index b2f9568..0000000
--- a/common/relationship-query/test.hxx
+++ /dev/null
@@ -1,151 +0,0 @@
-// file : common/relationship-query/test.hxx
-// copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC
-// license : GNU GPL v2; see accompanying LICENSE file
-
-#ifndef TEST_HXX
-#define TEST_HXX
-
-#include <common/config.hxx> // HAVE_CXX11, HAVE_TR1_MEMORY
-
-#if defined(HAVE_CXX11) || defined(HAVE_TR1_MEMORY)
-
-#include <string>
-
-#include <odb/core.hxx>
-
-#ifdef HAVE_CXX11
-# include <memory>
-using std::shared_ptr;
-#else
-# include <odb/tr1/memory.hxx>
-using std::tr1::shared_ptr;
-#endif
-
-struct country;
-
-#pragma db value
-struct residence_info
-{
- residence_info (bool p, shared_ptr<country> l)
- : permanent (p), location (l)
- {
- }
-
- residence_info ()
- {
- }
-
- bool permanent;
-
- #pragma db not_null
- shared_ptr<country> location;
-};
-
-#pragma db object pointer(shared_ptr)
-struct person
-{
- person (unsigned long i,
- const std::string& fn,
- const std::string& ln,
- unsigned short a,
- shared_ptr<country> r,
- bool p,
- shared_ptr<country> n)
- : id (i),
- first_name (fn),
- last_name (ln),
- age (a),
- residence (p, r),
- nationality (n)
- {
- }
-
- person ()
- {
- }
-
- #pragma db id
- unsigned long id;
-
- #pragma db column ("first")
- std::string first_name;
-
- #pragma db column ("last")
- std::string last_name;
-
- unsigned short age;
-
- residence_info residence;
-
- #pragma db not_null
- shared_ptr<country> nationality;
-
- shared_ptr<person> husband; // Self-join.
-};
-
-struct employer;
-
-#pragma db object pointer(shared_ptr)
-struct employee: person
-{
- employee (unsigned long i,
- const std::string& fn,
- const std::string& ln,
- unsigned short a,
- shared_ptr<country> r,
- bool p,
- shared_ptr<country> n,
- shared_ptr<employer> e)
- : person (i, fn, ln, a, r, p, n),
- employed_by (e)
- {
- }
-
- employee ()
- {
- }
-
- shared_ptr<employer> employed_by;
-};
-
-#pragma db object pointer(shared_ptr)
-struct employer
-{
- employer (const std::string& n, shared_ptr<country> nat)
- : name (n), nationality (nat)
- {
- }
-
- employer ()
- {
- }
-
- #pragma db id
- std::string name;
-
- // The same member name and type as in person (test JOIN alias).
- //
- #pragma db not_null
- shared_ptr<country> nationality;
-};
-
-#pragma db object pointer(shared_ptr)
-struct country
-{
- country (const std::string& c, std::string const& n)
- : code (c), name (n)
- {
- }
-
- country ()
- {
- }
-
- #pragma db id
- std::string code; // ISO 2-letter country code.
-
- std::string name;
-};
-
-#endif // HAVE_CXX11 || HAVE_TR1_MEMORY
-#endif // TEST_HXX