jbson
C++11/1y BSON library
View on GitHub
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
jbson
detail
config.hpp
1
// Copyright Christian Manning 2014.
2
// Distributed under the Boost Software License, Version 1.0.
3
// (See accompanying file LICENSE_1_0.txt or copy at
4
// http://www.boost.org/LICENSE_1_0.txt)
5
6
#ifndef JBSON_CONFIG_HPP
7
#define JBSON_CONFIG_HPP
8
9
#include <boost/config.hpp>
10
11
#ifdef JBSON_DEPRECATED
12
#undef JBSON_DEPRECATED
13
#endif
14
15
#ifdef DOXYGEN_SHOULD_SKIP_THIS
16
#define JBSON_DEPRECATED
17
#else
18
#if defined(BOOST_CLANG)
19
#define JBSON_DEPRECATED __attribute__((deprecated))
20
#elif defined(BOOST_MSVC)
21
#define JBSON_DEPRECATED __declspec(deprecated)
22
#else
23
#define JBSON_DEPRECATED
24
#endif
25
#endif // DOXYGEN_SHOULD_SKIP_THIS
26
27
#ifdef JBSON_PUSH_DISABLE_DEPRECATED_WARNING
28
#undef JBSON_PUSH_DISABLE_DEPRECATED_WARNING
29
#endif
30
31
#ifdef DOXYGEN_SHOULD_SKIP_THIS
32
#define JBSON_PUSH_DISABLE_DEPRECATED_WARNING
33
#else
34
#if defined(__GNUC__)
35
#define JBSON_PUSH_DISABLE_DEPRECATED_WARNING _Pragma("GCC diagnostic push")\
36
_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
37
#elif defined(BOOST_INTEL)
38
#define JBSON_PUSH_DISABLE_DEPRECATED_WARNING _Pragma("warning(push)")\
39
_Pragma("warning(disable:1786)")
40
#elif defined(BOOST_MSVC)
41
#define JBSON_PUSH_DISABLE_DEPRECATED_WARNING _Pragma("warning(push)")\
42
_Pragma("warning(disable:4996)")
43
#else
44
#define JBSON_PUSH_DISABLE_DEPRECATED_WARNING
45
#endif
46
#endif // DOXYGEN_SHOULD_SKIP_THIS
47
48
#ifdef JBSON_PUSH_DISABLE_DOCUMENTATION_WARNING
49
#undef JBSON_PUSH_DISABLE_DOCUMENTATION_WARNING
50
#endif
51
52
#ifdef DOXYGEN_SHOULD_SKIP_THIS
53
#define JBSON_PUSH_DISABLE_DOCUMENTATION_WARNING
54
#else
55
#if defined(BOOST_CLANG)
56
#define JBSON_PUSH_DISABLE_DOCUMENTATION_WARNING _Pragma("GCC diagnostic push")\
57
_Pragma("GCC diagnostic ignored \"-Wdocumentation\"")
58
#else
59
#define JBSON_PUSH_DISABLE_DOCUMENTATION_WARNING
60
#endif
61
#endif // DOXYGEN_SHOULD_SKIP_THIS
62
63
#ifdef JBSON_POP_WARNINGS
64
#undef JBSON_POP_WARNINGS
65
#endif
66
67
#ifdef DOXYGEN_SHOULD_SKIP_THIS
68
#define JBSON_POP_WARNINGS
69
#else
70
#if defined(__GNUC__)
71
#define JBSON_POP_WARNINGS _Pragma("GCC diagnostic pop")
72
#elif defined(BOOST_INTEL) || defined(BOOST_MSVC)
73
#define JBSON_POP_WARNINGS _Pragma("warning(pop)")
74
#else
75
#define JBSON_POP_WARNINGS
76
#endif
77
#endif // DOXYGEN_SHOULD_SKIP_THIS
78
79
#ifdef JBSON_CLANG_POP_WARNINGS
80
#undef JBSON_CLANG_POP_WARNINGS
81
#endif
82
83
#ifdef DOXYGEN_SHOULD_SKIP_THIS
84
#define JBSON_CLANG_POP_WARNINGS
85
#else
86
#if defined(BOOST_CLANG)
87
#define JBSON_CLANG_POP_WARNINGS JBSON_POP_WARNINGS
88
#else
89
#define JBSON_CLANG_POP_WARNINGS
90
#endif
91
#endif // DOXYGEN_SHOULD_SKIP_THIS
92
93
#endif // JBSON_CONFIG_HPP
Copyright © 2014
Christian Manning
. Generated by
1.8.6