From 19fcec84d8d7d21e796c7624e521b60d28ee21ed Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 20:45:59 +0200 Subject: Adding upstream version 16.2.11+ds. Signed-off-by: Daniel Baumann --- src/boost/libs/serialization/test/J.hpp | 51 +++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 src/boost/libs/serialization/test/J.hpp (limited to 'src/boost/libs/serialization/test/J.hpp') diff --git a/src/boost/libs/serialization/test/J.hpp b/src/boost/libs/serialization/test/J.hpp new file mode 100644 index 000000000..1849ee755 --- /dev/null +++ b/src/boost/libs/serialization/test/J.hpp @@ -0,0 +1,51 @@ +#ifndef BOOST_SERIALIZATION_TEST_J_HPP +#define BOOST_SERIALIZATION_TEST_J_HPP + +// MS compatible compilers support #pragma once +#if defined(_MSC_VER) +# pragma once +#endif + +/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8 +// J.hpp simple class test + +// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . +// Use, modification and distribution is subject to the Boost Software +// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +// See http://www.boost.org for updates, documentation, and revision history. + +#include + +#include "A.hpp" + +/////////////////////////////////////////////////////// +// class with a member which refers to itself +class J : public A +{ +private: + friend class boost::serialization::access; + template + void serialize( + Archive &ar, + const unsigned int /* file_version */ + ){ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(A); + ar & BOOST_SERIALIZATION_NVP(j); + } +public: + bool operator==(const J &rhs) const; + J *j; + J(J *_j) : j(_j) {} + J() : j(NULL){} +}; + +BOOST_CLASS_VERSION(J, 6) + +bool J::operator==(const J &rhs) const +{ + return static_cast(*this) == static_cast(rhs); +} + +#endif // BOOST_SERIALIZATION_TEST_J_HPP -- cgit v1.2.3