Warning, file /include/boost/pfr/detail/fake_object.hpp was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef BOOST_PFR_DETAIL_FAKE_OBJECT_HPP
0013 #define BOOST_PFR_DETAIL_FAKE_OBJECT_HPP
0014 #pragma once
0015
0016 #include <boost/pfr/detail/config.hpp>
0017
0018 #ifdef __clang__
0019 # pragma clang diagnostic push
0020 # pragma clang diagnostic ignored "-Wundefined-internal"
0021 # pragma clang diagnostic ignored "-Wundefined-var-template"
0022 #endif
0023
0024 namespace boost { namespace pfr { namespace detail {
0025
0026
0027 template <class T>
0028 struct wrapper {
0029 const T value;
0030 };
0031
0032
0033
0034 template <class T>
0035 extern const wrapper<T> do_not_use_PFR_with_local_types;
0036
0037
0038
0039
0040
0041
0042 template <class T>
0043 constexpr const T& fake_object() noexcept {
0044 return do_not_use_PFR_with_local_types<T>.value;
0045 }
0046
0047 }}}
0048
0049 #ifdef __clang__
0050 # pragma clang diagnostic pop
0051 #endif
0052
0053 #endif
0054