QxOrm 1.4.9
C++ Object Relational Mapping library
Loading...
Searching...
No Matches
is_equal.h
Go to the documentation of this file.
1/****************************************************************************
2**
3** https://www.qxorm.com/
4** Copyright (C) 2013 Lionel Marty (contact@qxorm.com)
5**
6** This file is part of the QxOrm library
7**
8** This software is provided 'as-is', without any express or implied
9** warranty. In no event will the authors be held liable for any
10** damages arising from the use of this software
11**
12** Commercial Usage
13** Licensees holding valid commercial QxOrm licenses may use this file in
14** accordance with the commercial license agreement provided with the
15** Software or, alternatively, in accordance with the terms contained in
16** a written agreement between you and Lionel Marty
17**
18** GNU General Public License Usage
19** Alternatively, this file may be used under the terms of the GNU
20** General Public License version 3.0 as published by the Free Software
21** Foundation and appearing in the file 'license.gpl3.txt' included in the
22** packaging of this file. Please review the following information to
23** ensure the GNU General Public License version 3.0 requirements will be
24** met : http://www.gnu.org/copyleft/gpl.html
25**
26** If you are unsure which license is appropriate for your use, or
27** if you have questions regarding the use of this file, please contact :
28** contact@qxorm.com
29**
30****************************************************************************/
31
32#ifndef _QX_TRAIT_IS_EQUAL_H_
33#define _QX_TRAIT_IS_EQUAL_H_
34
35#ifdef _MSC_VER
36#pragma once
37#endif
38
46#include <QtCore/qstring.h>
47#include <QtCore/qdatetime.h>
48#include <QtCore/qvariant.h>
49#include <QtCore/qbytearray.h>
50#include <QtCore/qpoint.h>
51#include <QtCore/qrect.h>
52#include <QtCore/qsize.h>
53#include <QtCore/qurl.h>
54#include <QtCore/quuid.h>
55#include <QtCore/qsharedpointer.h>
56
57#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
58#include <QtCore/qregexp.h>
59#endif // (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
60
61#ifdef _QX_ENABLE_QT_GUI
62#include <QtGui/qcolor.h>
63#include <QtGui/qfont.h>
64#include <QtGui/qimage.h>
65#include <QtGui/qbrush.h>
66#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
67#include <QtGui/qmatrix.h>
68#endif // (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
69#include <QtGui/qregion.h>
70#endif // _QX_ENABLE_QT_GUI
71
72#include <QxDao/QxDaoPointer.h>
73
74namespace qx {
75namespace trait {
76
81template <typename T>
83{ enum { value = std::is_pointer<T>::value }; };
84
85} // namespace trait
86} // namespace qx
87
88#define QX_TYPE_HAS_OPERATOR_EQUAL_EQUAL(className) \
89namespace qx { namespace trait { \
90template <> \
91struct has_operator_equal_equal< className > { enum { value = true }; }; \
92} } // namespace qx::trait
93
94#define QX_TYPE_HAS_OPERATOR_EQUAL_EQUAL_TEMPLATE_1(className) \
95namespace qx { namespace trait { \
96template <typename T> \
97struct has_operator_equal_equal< className<T> > { enum { value = true }; }; \
98} } // namespace qx::trait
99
112
115
127
128#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
130#endif // (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
131
132#ifdef _QX_ENABLE_QT_GUI
137#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
139#endif // (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
141#endif // _QX_ENABLE_QT_GUI
142
143#ifdef _QX_ENABLE_BOOST
145#endif // _QX_ENABLE_BOOST
146
150
153
154#endif // _QX_TRAIT_IS_EQUAL_H_
qx::dao::ptr<T> : provide a classic smart-pointer (like boost::shared_ptr<T> or QSharedPointer<T>) wi...
qx::dao::ptr<T> : provide a classic smart-pointer (like boost::shared_ptr<T> or QSharedPointer<T>) wi...
#define QX_TYPE_HAS_OPERATOR_EQUAL_EQUAL(className)
Definition is_equal.h:88
#define QX_TYPE_HAS_OPERATOR_EQUAL_EQUAL_TEMPLATE_1(className)
Definition is_equal.h:94
Root namespace for all QxOrm library features.
qx::trait::has_operator_equal_equal<T>::value : return true if T provides operator==() function,...
Definition is_equal.h:83