mirror of
https://github.com/boostorg/variant.git
synced 2026-07-21 13:43:36 +00:00
Compare commits
12 Commits
boost-1.84.0
...
develop
| Author | SHA1 | Date | |
|---|---|---|---|
| e8cb128f99 | |||
| 5e1fe395b6 | |||
| fdf2c0f646 | |||
| 0d822a9b73 | |||
| cf72f05cef | |||
| 9738f5733b | |||
| a803f3f1dd | |||
| 1fd7271d2e | |||
| 36fc992f51 | |||
| 0fd179fbd8 | |||
| b33ff4f811 | |||
| e37df948d7 |
@@ -0,0 +1,11 @@
|
||||
# To get started with Dependabot version updates, you'll need to specify which
|
||||
# package ecosystems to update and where the package manifests are located.
|
||||
# Please see the documentation for all configuration options:
|
||||
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
|
||||
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions" # See documentation for possible values
|
||||
directory: "/" # Location of package manifests
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
@@ -32,16 +32,16 @@ jobs:
|
||||
gcov_tool: "gcov-11"
|
||||
launcher: "testing.launcher=LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.7"
|
||||
- toolset: clang
|
||||
compiler: clang++-10
|
||||
compiler: clang++
|
||||
cxxstd: "03,11,14,17,2a"
|
||||
os: ubuntu-20.04
|
||||
os: ubuntu-24.04
|
||||
cxxflags: "cxxflags=-fsanitize=address,undefined,integer -fno-sanitize-recover=undefined"
|
||||
linkflags: "linkflags=-fsanitize=address,undefined,integer"
|
||||
|
||||
runs-on: ${{matrix.os}}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Install packages
|
||||
if: matrix.install
|
||||
@@ -70,7 +70,7 @@ jobs:
|
||||
python tools/boostdep/depinst/depinst.py --include benchmark --include example --include examples --include tools --git_args "--depth 10 --jobs 3" $LIBRARY
|
||||
./bootstrap.sh
|
||||
./b2 -d0 headers
|
||||
./b2 -j4 variant=debug tools/inspect/build
|
||||
./b2 -j4 variant=debug tools/inspect
|
||||
|
||||
- name: Run tests
|
||||
run: |
|
||||
@@ -115,19 +115,19 @@ jobs:
|
||||
cxxstd: "14,17,latest"
|
||||
addrmd: 32,64
|
||||
os: windows-2022
|
||||
- toolset: msvc-14.2
|
||||
- toolset: msvc
|
||||
cxxstd: "14,17,latest"
|
||||
addrmd: 32,64
|
||||
os: windows-2019
|
||||
os: windows-2025
|
||||
- toolset: gcc
|
||||
cxxstd: "03,11,14,17,2a"
|
||||
addrmd: 64
|
||||
os: windows-2019
|
||||
os: windows-2025
|
||||
|
||||
runs-on: ${{matrix.os}}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Setup Boost
|
||||
shell: cmd
|
||||
|
||||
@@ -20,7 +20,6 @@ target_link_libraries( boost_variant
|
||||
Boost::integer
|
||||
Boost::mpl
|
||||
Boost::preprocessor
|
||||
Boost::static_assert
|
||||
Boost::throw_exception
|
||||
Boost::type_index
|
||||
Boost::type_traits
|
||||
|
||||
@@ -5,8 +5,8 @@ Boost.Variant, part of collection of the [Boost C++ Libraries](https://github.co
|
||||
|
||||
@ | Build | Tests coverage | More info
|
||||
----------------|-------------- | -------------- |-----------
|
||||
Develop branch: | [](https://github.com/boostorg/variant/actions/workflows/ci.yml) [](https://ci.appveyor.com/project/apolukhin/variant-ykfti/branch/develop) | [](https://coveralls.io/r/apolukhin/variant?branch=develop) | [details...](http://www.boost.org/development/tests/develop/developer/variant.html)
|
||||
Master branch: | [](https://github.com/boostorg/variant/actions/workflows/ci.yml) [](https://ci.appveyor.com/project/apolukhin/variant-ykfti/branch/master) | [](https://coveralls.io/r/apolukhin/variant?branch=master) | [details...](http://www.boost.org/development/tests/master/developer/variant.html)
|
||||
Develop branch: | [](https://github.com/boostorg/variant/actions/workflows/ci.yml) [](https://ci.appveyor.com/project/apolukhin/variant-ykfti/branch/develop) | [](https://coveralls.io/r/apolukhin/variant?branch=develop) | [details...](https://regression.boost.io/develop/developer/variant.html)
|
||||
Master branch: | [](https://github.com/boostorg/variant/actions/workflows/ci.yml) [](https://ci.appveyor.com/project/apolukhin/variant-ykfti/branch/master) | [](https://coveralls.io/r/apolukhin/variant?branch=master) | [details...](https://regression.boost.io/master/developer/variant.html)
|
||||
|
||||
|
||||
[Latest developer documentation](https://www.boost.org/doc/libs/develop/doc/html/variant.html)
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
# Copyright René Ferdinand Rivera Morell 2023-2024
|
||||
# Distributed under 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)
|
||||
|
||||
require-b2 5.2 ;
|
||||
|
||||
constant boost_dependencies :
|
||||
/boost/assert//boost_assert
|
||||
/boost/config//boost_config
|
||||
/boost/container_hash//boost_container_hash
|
||||
/boost/core//boost_core
|
||||
/boost/detail//boost_detail
|
||||
/boost/integer//boost_integer
|
||||
/boost/mpl//boost_mpl
|
||||
/boost/preprocessor//boost_preprocessor
|
||||
/boost/throw_exception//boost_throw_exception
|
||||
/boost/type_index//boost_type_index
|
||||
/boost/type_traits//boost_type_traits
|
||||
/boost/utility//boost_utility ;
|
||||
|
||||
project /boost/variant
|
||||
: common-requirements
|
||||
<include>include
|
||||
;
|
||||
|
||||
explicit
|
||||
[ alias boost_variant : : : : <library>$(boost_dependencies) ]
|
||||
[ alias all : boost_variant test ]
|
||||
;
|
||||
|
||||
call-if : boost-library variant
|
||||
;
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
|
||||
<!--
|
||||
Copyright 2003, Eric Friedman, Itay Maman.
|
||||
Copyright 2013-2023 Antony Polukhin.
|
||||
Copyright 2013-2026 Antony Polukhin.
|
||||
|
||||
Distributed under 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)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!DOCTYPE header PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
|
||||
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
|
||||
<!--
|
||||
Copyright 2013-2023 Antony Polukhin.
|
||||
Copyright 2013-2026 Antony Polukhin.
|
||||
|
||||
Distributed under 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)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!DOCTYPE header PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
|
||||
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
|
||||
<!--
|
||||
Copyright 2013-2023 Antony Polukhin.
|
||||
Copyright 2013-2026 Antony Polukhin.
|
||||
|
||||
Distributed under 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)
|
||||
|
||||
@@ -104,11 +104,6 @@
|
||||
<listitem><code>Sequence</code> must meet the requirements of
|
||||
<libraryname>MPL</libraryname>'s <emphasis>Sequence</emphasis>
|
||||
concept.</listitem>
|
||||
<listitem>Due to standard conformance problems in several compilers,
|
||||
<code>make_recursive_variant_over</code> may not be supported on
|
||||
your compiler. See
|
||||
<code><macroname>BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT</macroname></code>
|
||||
for more information.</listitem>
|
||||
</itemizedlist>
|
||||
</description>
|
||||
</class>
|
||||
|
||||
@@ -951,11 +951,6 @@
|
||||
<listitem><code>Sequence</code> must meet the requirements of
|
||||
<libraryname>MPL</libraryname>'s <emphasis>Sequence</emphasis>
|
||||
concept.</listitem>
|
||||
<listitem>Due to standard conformance problems in several compilers,
|
||||
<code>make_variant_over</code> may not be supported on your
|
||||
compiler. See
|
||||
<code><macroname>BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT</macroname></code>
|
||||
for more information.</listitem>
|
||||
</itemizedlist>
|
||||
</description>
|
||||
</class>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
|
||||
<!--
|
||||
Copyright 2003, Eric Friedman, Itay Maman.
|
||||
Copyright 2016-2023 Antony Polukhin.
|
||||
Copyright 2016-2026 Antony Polukhin.
|
||||
|
||||
Distributed under 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)
|
||||
@@ -91,21 +91,6 @@
|
||||
</description>
|
||||
</macro>
|
||||
|
||||
<macro name="BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT">
|
||||
<purpose>
|
||||
<simpara>Indicates absence of support for specifying the bounded types
|
||||
of a <code><classname>variant</classname></code> by the elements of a
|
||||
type sequence.</simpara>
|
||||
</purpose>
|
||||
|
||||
<description>
|
||||
<para>Defined only if
|
||||
<code><classname>make_variant_over</classname></code> and
|
||||
<code><classname>make_recursive_variant_over</classname></code>
|
||||
are not supported for some reason on the target compiler.</para>
|
||||
</description>
|
||||
</macro>
|
||||
|
||||
<macro name="BOOST_VARIANT_DO_NOT_SPECIALIZE_STD_HASH">
|
||||
<purpose>
|
||||
<simpara>Define this macro if you do not wish to have a <code><classname>std::hash</classname></code> specialization for
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
|
||||
<!--
|
||||
Copyright 2003, Eric Friedman, Itay Maman.
|
||||
Copyright 2013-2023 Antony Polukhin.
|
||||
Copyright 2013-2026 Antony Polukhin.
|
||||
|
||||
Distributed under 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)
|
||||
@@ -90,13 +90,6 @@ typedef <classname>mpl::push_front</classname>< types_initial, int >::type
|
||||
|
||||
</para>
|
||||
|
||||
<para><emphasis role="bold">Portability</emphasis>: Unfortunately, due to
|
||||
standard conformance issues in several compilers,
|
||||
<code>make_variant_over</code> is not universally available. On these
|
||||
compilers the library indicates its lack of support for the syntax via the
|
||||
definition of the preprocessor symbol
|
||||
<code><macroname>BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT</macroname></code>.</para>
|
||||
|
||||
</section>
|
||||
|
||||
<section id="variant.tutorial.recursive">
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@
|
||||
</copyright>
|
||||
|
||||
<copyright>
|
||||
<year>2014-2023</year>
|
||||
<year>2014-2026</year>
|
||||
<holder>Antony Polukhin</holder>
|
||||
</copyright>
|
||||
<legalnotice>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2002-2003 Eric Friedman
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2002-2003 Eric Friedman
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman
|
||||
// Copyright (c) 2016-2023 Antony Polukhin
|
||||
// Copyright (c) 2016-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman
|
||||
// Copyright (c) 2015-2023 Antony Polukhin
|
||||
// Copyright (c) 2015-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2011-2023 Antony Polukhin
|
||||
// Copyright (c) 2011-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
#include <boost/variant/recursive_wrapper_fwd.hpp>
|
||||
#include <boost/variant/detail/move.hpp>
|
||||
|
||||
#if !defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
# include <boost/mpl/aux_/value_wknd.hpp>
|
||||
# include <boost/mpl/int.hpp>
|
||||
# include <boost/mpl/iter_fold.hpp>
|
||||
@@ -30,12 +29,7 @@
|
||||
# include <boost/mpl/deref.hpp>
|
||||
# include <boost/mpl/pair.hpp>
|
||||
# include <boost/mpl/protect.hpp>
|
||||
#else
|
||||
# include <boost/variant/variant_fwd.hpp>
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/enum.hpp>
|
||||
# include <boost/preprocessor/repeat.hpp>
|
||||
#endif
|
||||
|
||||
|
||||
namespace boost {
|
||||
namespace detail { namespace variant {
|
||||
@@ -53,8 +47,6 @@ namespace detail { namespace variant {
|
||||
// size of the variant's psuedo-variadic template parameter list.
|
||||
//
|
||||
|
||||
#if !defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
|
||||
// (detail) quoted metafunction make_initializer_node
|
||||
//
|
||||
// Exposes a pair whose first type is a node in the initializer hierarchy.
|
||||
@@ -81,7 +73,6 @@ struct make_initializer_node
|
||||
typedef typename unwrap_recursive<recursive_enabled_T>::type
|
||||
public_T;
|
||||
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
typedef boost::is_reference<public_T>
|
||||
is_reference_content_t;
|
||||
|
||||
@@ -92,10 +83,6 @@ struct make_initializer_node
|
||||
|
||||
typedef typename boost::mpl::if_<is_reference_content_t, disable_overload<public_T>, public_T&& >::type
|
||||
param2_T;
|
||||
#else
|
||||
typedef typename call_traits<public_T>::param_type
|
||||
param_T;
|
||||
#endif
|
||||
|
||||
public: // static functions
|
||||
|
||||
@@ -111,7 +98,6 @@ struct make_initializer_node
|
||||
return BOOST_MPL_AUX_VALUE_WKND(index)::value; // which
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
static int initialize(void* dest, param2_T operand)
|
||||
{
|
||||
// This assert must newer trigger, because all the reference contents are
|
||||
@@ -122,7 +108,6 @@ struct make_initializer_node
|
||||
new(dest) value_T( boost::detail::variant::move(operand) );
|
||||
return BOOST_MPL_AUX_VALUE_WKND(index)::value; // which
|
||||
}
|
||||
#endif
|
||||
};
|
||||
|
||||
friend class initializer_node;
|
||||
@@ -150,61 +135,6 @@ public: // static functions
|
||||
|
||||
};
|
||||
|
||||
#else // defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
|
||||
// Obsolete. Remove.
|
||||
#define BOOST_VARIANT_AUX_PP_INITIALIZER_TEMPLATE_PARAMS \
|
||||
BOOST_VARIANT_ENUM_PARAMS(typename recursive_enabled_T) \
|
||||
/**/
|
||||
|
||||
// Obsolete. Remove.
|
||||
#define BOOST_VARIANT_AUX_PP_INITIALIZER_DEFINE_PARAM_T(N) \
|
||||
typedef typename unwrap_recursive< \
|
||||
BOOST_PP_CAT(recursive_enabled_T,N) \
|
||||
>::type BOOST_PP_CAT(public_T,N); \
|
||||
typedef typename call_traits< \
|
||||
BOOST_PP_CAT(public_T,N) \
|
||||
>::param_type BOOST_PP_CAT(param_T,N); \
|
||||
/**/
|
||||
|
||||
template < BOOST_VARIANT_ENUM_PARAMS(typename recursive_enabled_T) >
|
||||
struct preprocessor_list_initializer
|
||||
{
|
||||
public: // static functions
|
||||
|
||||
#define BOOST_VARIANT_AUX_PP_INITIALIZE_FUNCTION(z,N,_) \
|
||||
typedef typename unwrap_recursive< \
|
||||
BOOST_PP_CAT(recursive_enabled_T,N) \
|
||||
>::type BOOST_PP_CAT(public_T,N); \
|
||||
typedef typename call_traits< \
|
||||
BOOST_PP_CAT(public_T,N) \
|
||||
>::param_type BOOST_PP_CAT(param_T,N); \
|
||||
static int initialize( \
|
||||
void* dest \
|
||||
, BOOST_PP_CAT(param_T,N) operand \
|
||||
) \
|
||||
{ \
|
||||
typedef typename boost::detail::make_reference_content< \
|
||||
BOOST_PP_CAT(recursive_enabled_T,N) \
|
||||
>::type internal_T; \
|
||||
\
|
||||
new(dest) internal_T(operand); \
|
||||
return (N); /*which*/ \
|
||||
} \
|
||||
/**/
|
||||
|
||||
BOOST_PP_REPEAT(
|
||||
BOOST_VARIANT_LIMIT_TYPES
|
||||
, BOOST_VARIANT_AUX_PP_INITIALIZE_FUNCTION
|
||||
, _
|
||||
)
|
||||
|
||||
#undef BOOST_VARIANT_AUX_PP_INITIALIZE_FUNCTION
|
||||
|
||||
};
|
||||
|
||||
#endif // BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE workaround
|
||||
|
||||
}} // namespace detail::variant
|
||||
} // namespace boost
|
||||
|
||||
@@ -216,8 +146,6 @@ public: // static functions
|
||||
// most appropriate to the current compiler.
|
||||
//
|
||||
|
||||
#if !defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
|
||||
#define BOOST_VARIANT_AUX_INITIALIZER_T( mpl_seq, typename_base ) \
|
||||
::boost::mpl::iter_fold< \
|
||||
mpl_seq \
|
||||
@@ -231,19 +159,4 @@ public: // static functions
|
||||
>::type::first \
|
||||
/**/
|
||||
|
||||
#else // defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
|
||||
// Obsolete. Remove.
|
||||
#define BOOST_VARIANT_AUX_PP_INITIALIZER_TEMPLATE_ARGS(typename_base) \
|
||||
BOOST_VARIANT_ENUM_PARAMS(typename_base) \
|
||||
/**/
|
||||
|
||||
#define BOOST_VARIANT_AUX_INITIALIZER_T( mpl_seq, typename_base ) \
|
||||
::boost::detail::variant::preprocessor_list_initializer< \
|
||||
BOOST_VARIANT_ENUM_PARAMS(typename_base) \
|
||||
> \
|
||||
/**/
|
||||
|
||||
#endif // BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE workaround
|
||||
|
||||
#endif // BOOST_VARIANT_DETAIL_INITIALIZER_HPP
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2002-2003 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
//
|
||||
// Copyright (c) 2002-2003 Eric Friedman
|
||||
// Copyright (c) 2002 by Andrei Alexandrescu
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Use, modification and distribution are subject to the
|
||||
// Boost Software License, Version 1.0. (See accompanying file
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
//
|
||||
// See http://www.boost.org for most recent version, including documentation.
|
||||
//
|
||||
// Copyright Antony Polukhin, 2013-2023.
|
||||
// Copyright Antony Polukhin, 2013-2024.
|
||||
//
|
||||
// Distributed under the Boost
|
||||
// Software License, Version 1.0. (See accompanying file
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2018-2023 Antony Polukhin
|
||||
// Copyright (c) 2018-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -22,10 +22,7 @@
|
||||
#include <boost/mpl/aux_/preprocessor/repeat.hpp>
|
||||
#include <boost/mpl/int_fwd.hpp>
|
||||
#include <boost/mpl/limits/arity.hpp>
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/empty.hpp>
|
||||
#include <boost/preprocessor/arithmetic/inc.hpp>
|
||||
#include <boost/preprocessor/iterate.hpp>
|
||||
|
||||
namespace boost {
|
||||
namespace detail { namespace variant {
|
||||
|
||||
@@ -16,8 +16,6 @@
|
||||
#include <iosfwd> // for std::basic_ostream forward declare
|
||||
|
||||
#include <boost/variant/variant_fwd.hpp>
|
||||
|
||||
#include <boost/detail/templated_streams.hpp>
|
||||
#include <boost/variant/static_visitor.hpp>
|
||||
|
||||
namespace boost {
|
||||
@@ -29,14 +27,9 @@ namespace boost {
|
||||
//
|
||||
|
||||
// forward declare (allows output of embedded variant< variant< ... >, ... >)
|
||||
template <
|
||||
BOOST_TEMPLATED_STREAM_ARGS(E,T)
|
||||
BOOST_TEMPLATED_STREAM_COMMA
|
||||
BOOST_VARIANT_ENUM_PARAMS(typename U)
|
||||
>
|
||||
inline BOOST_TEMPLATED_STREAM(ostream, E,T)& operator<<(
|
||||
BOOST_TEMPLATED_STREAM(ostream, E,T)& out
|
||||
, const variant< BOOST_VARIANT_ENUM_PARAMS(U) >& rhs
|
||||
template <class CharT, class Trait, typename... U>
|
||||
inline std::basic_ostream<CharT, Trait>& operator<<(
|
||||
std::basic_ostream<CharT, Trait>& out, const variant<U...>& rhs
|
||||
);
|
||||
|
||||
namespace detail { namespace variant {
|
||||
@@ -71,18 +64,13 @@ private:
|
||||
|
||||
}} // namespace detail::variant
|
||||
|
||||
template <
|
||||
BOOST_TEMPLATED_STREAM_ARGS(E,T)
|
||||
BOOST_TEMPLATED_STREAM_COMMA
|
||||
BOOST_VARIANT_ENUM_PARAMS(typename U)
|
||||
>
|
||||
inline BOOST_TEMPLATED_STREAM(ostream, E,T)& operator<<(
|
||||
BOOST_TEMPLATED_STREAM(ostream, E,T)& out
|
||||
, const variant< BOOST_VARIANT_ENUM_PARAMS(U) >& rhs
|
||||
template <class CharT, class Trait, typename... U>
|
||||
inline std::basic_ostream<CharT, Trait>& operator<<(
|
||||
std::basic_ostream<CharT, Trait>& out, const variant<U...>& rhs
|
||||
)
|
||||
{
|
||||
detail::variant::printer<
|
||||
BOOST_TEMPLATED_STREAM(ostream, E,T)
|
||||
std::basic_ostream<CharT, Trait>
|
||||
> visitor(out);
|
||||
|
||||
rhs.apply_visitor(visitor);
|
||||
|
||||
@@ -53,13 +53,6 @@
|
||||
|
||||
#endif
|
||||
|
||||
// Define a compiler generic null pointer value
|
||||
#if defined(BOOST_NO_CXX11_NULLPTR)
|
||||
#define BOOST_VARIANT_NULL 0
|
||||
#else
|
||||
#define BOOST_VARIANT_NULL nullptr
|
||||
#endif
|
||||
|
||||
namespace boost {
|
||||
namespace detail { namespace variant {
|
||||
|
||||
@@ -179,7 +172,7 @@ inline typename Visitor::result_type
|
||||
visitation_impl(
|
||||
int, int, Visitor&, VPCV
|
||||
, mpl::true_ // is_apply_visitor_unrolled
|
||||
, NBF, W* = BOOST_VARIANT_NULL, S* = BOOST_VARIANT_NULL
|
||||
, NBF, W* = nullptr, S* = nullptr
|
||||
)
|
||||
{
|
||||
// should never be here at runtime!
|
||||
@@ -198,7 +191,7 @@ visitation_impl(
|
||||
, Visitor& visitor, VoidPtrCV storage
|
||||
, mpl::false_ // is_apply_visitor_unrolled
|
||||
, NoBackupFlag no_backup_flag
|
||||
, Which* = BOOST_VARIANT_NULL, step0* = BOOST_VARIANT_NULL
|
||||
, Which* = nullptr, step0* = nullptr
|
||||
)
|
||||
{
|
||||
// Typedef apply_visitor_unrolled steps and associated types...
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
//
|
||||
// See http://www.boost.org for most recent version, including documentation.
|
||||
//
|
||||
// Copyright (c) 2013-2023 Antony Polukhin.
|
||||
// Copyright (c) 2013-2026 Antony Polukhin.
|
||||
//
|
||||
// Distributed under the Boost
|
||||
// Software License, Version 1.0. (See accompanying file
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2002 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2016-2023 Antony Polukhin
|
||||
// Copyright (c) 2016-2026 Antony Polukhin
|
||||
//
|
||||
// Portions Copyright (C) 2002 David Abrahams
|
||||
//
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2002-2003 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2012-2023 Antony Polukhin
|
||||
// Copyright (c) 2012-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
@@ -40,8 +40,6 @@
|
||||
#include <boost/blank.hpp>
|
||||
#include <boost/integer/common_factor_ct.hpp>
|
||||
#include <boost/static_assert.hpp>
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/repeat.hpp>
|
||||
#include <boost/type_traits/aligned_storage.hpp>
|
||||
#include <boost/type_traits/alignment_of.hpp>
|
||||
#include <boost/type_traits/add_const.hpp>
|
||||
@@ -1096,8 +1094,6 @@ private: // helpers, for typedefs (below)
|
||||
{
|
||||
};
|
||||
|
||||
#if !defined(BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT)
|
||||
|
||||
private: // helpers, for typedefs (below)
|
||||
|
||||
typedef typename mpl::eval_if<
|
||||
@@ -1141,82 +1137,6 @@ private: // internal typedefs
|
||||
internal_types
|
||||
>::type internal_T0;
|
||||
|
||||
#else // defined(BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT)
|
||||
|
||||
private: // helpers, for typedefs (below)
|
||||
|
||||
typedef unwrapped_T0_ T0;
|
||||
|
||||
#define BOOST_VARIANT_AUX_ENABLE_RECURSIVE_TYPEDEFS(z,N,_) \
|
||||
typedef typename mpl::eval_if< \
|
||||
is_recursive_ \
|
||||
, detail::variant::enable_recursive< \
|
||||
BOOST_PP_CAT(T,N) \
|
||||
, wknd_self_t \
|
||||
> \
|
||||
, mpl::identity< BOOST_PP_CAT(T,N) > \
|
||||
>::type BOOST_PP_CAT(recursive_enabled_T,N); \
|
||||
/**/
|
||||
|
||||
BOOST_PP_REPEAT(
|
||||
BOOST_VARIANT_LIMIT_TYPES
|
||||
, BOOST_VARIANT_AUX_ENABLE_RECURSIVE_TYPEDEFS
|
||||
, _
|
||||
)
|
||||
|
||||
#undef BOOST_VARIANT_AUX_ENABLE_RECURSIVE_TYPEDEFS
|
||||
|
||||
#define BOOST_VARIANT_AUX_UNWRAP_RECURSIVE_TYPEDEFS(z,N,_) \
|
||||
typedef typename unwrap_recursive< \
|
||||
BOOST_PP_CAT(recursive_enabled_T,N) \
|
||||
>::type BOOST_PP_CAT(public_T,N); \
|
||||
/**/
|
||||
|
||||
BOOST_PP_REPEAT(
|
||||
BOOST_VARIANT_LIMIT_TYPES
|
||||
, BOOST_VARIANT_AUX_UNWRAP_RECURSIVE_TYPEDEFS
|
||||
, _
|
||||
)
|
||||
|
||||
#undef BOOST_VARIANT_AUX_UNWRAP_RECURSIVE_TYPEDEFS
|
||||
|
||||
public: // public typedefs
|
||||
|
||||
typedef typename detail::variant::make_variant_list<
|
||||
BOOST_VARIANT_ENUM_PARAMS(public_T)
|
||||
>::type types;
|
||||
|
||||
private: // helpers, for internal typedefs (below)
|
||||
|
||||
#define BOOST_VARIANT_AUX_MAKE_REFERENCE_CONTENT_TYPEDEFS(z,N,_) \
|
||||
typedef detail::make_reference_content< \
|
||||
BOOST_PP_CAT(recursive_enabled_T,N) \
|
||||
>::type BOOST_PP_CAT(internal_T,N); \
|
||||
/**/
|
||||
|
||||
BOOST_PP_REPEAT(
|
||||
BOOST_VARIANT_LIMIT_TYPES
|
||||
, BOOST_VARIANT_AUX_MAKE_REFERENCE_CONTENT_TYPEDEFS
|
||||
, _
|
||||
)
|
||||
|
||||
#undef BOOST_VARIANT_AUX_MAKE_REFERENCE_CONTENT_TYPEDEFS
|
||||
|
||||
private: // internal typedefs
|
||||
|
||||
typedef typename detail::variant::make_variant_list<
|
||||
BOOST_VARIANT_ENUM_PARAMS(internal_T)
|
||||
>::type internal_types;
|
||||
|
||||
private: // static precondition assertions
|
||||
|
||||
// NOTE TO USER :
|
||||
// variant< type-sequence > syntax is not supported on this compiler!
|
||||
//
|
||||
BOOST_MPL_ASSERT_NOT(( is_sequence_based_ ));
|
||||
|
||||
#endif // BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT workaround
|
||||
|
||||
private: // helpers, for representation (below)
|
||||
|
||||
typedef typename detail::variant::find_fallback_type<
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
@@ -25,15 +25,6 @@
|
||||
#include <boost/preprocessor/enum_shifted_params.hpp>
|
||||
#include <boost/preprocessor/repeat.hpp>
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// macro BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT
|
||||
//
|
||||
// Defined if variant does not support make_variant_over (see below).
|
||||
//
|
||||
#if defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
# define BOOST_VARIANT_NO_TYPE_SEQUENCE_SUPPORT
|
||||
#endif
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// macro BOOST_VARIANT_NO_FULL_RECURSIVE_VARIANT_SUPPORT
|
||||
//
|
||||
@@ -118,40 +109,6 @@ struct convert_void< void_ >
|
||||
typedef mpl::na type;
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// (workaround) BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE
|
||||
//
|
||||
// Needed to work around compilers that don't support using-declaration
|
||||
// overloads. (See the variant::initializer workarounds below.)
|
||||
//
|
||||
|
||||
#if defined(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE)
|
||||
// (detail) tags voidNN -- NN defined on [0, BOOST_VARIANT_LIMIT_TYPES)
|
||||
//
|
||||
// Defines void types that are each unique and specializations of
|
||||
// convert_void that yields mpl::na for each voidNN type.
|
||||
//
|
||||
|
||||
#define BOOST_VARIANT_DETAIL_DEFINE_VOID_N(z,N,_) \
|
||||
struct BOOST_PP_CAT(void,N); \
|
||||
\
|
||||
template <> \
|
||||
struct convert_void< BOOST_PP_CAT(void,N) > \
|
||||
{ \
|
||||
typedef mpl::na type; \
|
||||
}; \
|
||||
/**/
|
||||
|
||||
BOOST_PP_REPEAT(
|
||||
BOOST_VARIANT_LIMIT_TYPES
|
||||
, BOOST_VARIANT_DETAIL_DEFINE_VOID_N
|
||||
, _
|
||||
)
|
||||
|
||||
#undef BOOST_VARIANT_DETAIL_DEFINE_VOID_N
|
||||
|
||||
#endif // BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE workaround
|
||||
|
||||
}} // namespace detail::variant
|
||||
|
||||
#define BOOST_VARIANT_AUX_DECLARE_PARAMS BOOST_VARIANT_ENUM_PARAMS(typename T)
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright 2014-2023 Antony Polukhin
|
||||
Copyright 2014-2026 Antony Polukhin
|
||||
antoshkka at gmail dot com
|
||||
|
||||
Distributed under the Boost Software License,
|
||||
@@ -29,7 +29,7 @@
|
||||
<a href="../../doc/html/variant.html">../../doc/html/variant.html</a>
|
||||
</p>
|
||||
<p>
|
||||
© 2014-2023 Antony Polukhin
|
||||
© 2014-2024 Antony Polukhin
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
#==============================================================================
|
||||
# Copyright (c) 2012-2023 Antony Polukhin
|
||||
# Copyright (c) 2012-2026 Antony Polukhin
|
||||
#
|
||||
# Distributed under 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)
|
||||
|
||||
+12
-9
@@ -1,21 +1,24 @@
|
||||
# Boost.Variant Library test Jamfile
|
||||
#
|
||||
# Copyright (C) 2003, Eric Friedman, Itay Maman.
|
||||
# Copyright (C) 2013-2023 Antony Polukhin.
|
||||
# Copyright (C) 2013-2026 Antony Polukhin.
|
||||
#
|
||||
# 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)
|
||||
#
|
||||
|
||||
require-b2 5.0.1 ;
|
||||
import-search /boost/config/checks ;
|
||||
import config : requires ;
|
||||
import testing ;
|
||||
import ../../config/checks/config : requires ;
|
||||
|
||||
local below_cpp14 = 98 03 0x 11 ;
|
||||
local since_cpp20 = 2a 20 latest ;
|
||||
|
||||
project
|
||||
: requirements
|
||||
<library>/boost/variant//boost_variant
|
||||
[ requires cxx11_rvalue_references ]
|
||||
<toolset>msvc:<asynch-exceptions>on
|
||||
;
|
||||
@@ -30,7 +33,7 @@ test-suite variant
|
||||
[ run test6.cpp : : : : variant_test6 ]
|
||||
[ run test7.cpp : : : : variant_test7 ]
|
||||
[ run test8.cpp : : : : variant_test8 ]
|
||||
[ run test9.cpp : : : : variant_test9 ]
|
||||
[ run test9.cpp : : : <library>/boost/fusion//boost_fusion : variant_test9 ]
|
||||
[ run recursive_variant_test.cpp ]
|
||||
[ run variant_reference_test.cpp ]
|
||||
[ run variant_comparison_test.cpp ]
|
||||
@@ -39,7 +42,7 @@ test-suite variant
|
||||
[ run variant_get_test.cpp ]
|
||||
[ compile-fail variant_rvalue_get_with_ampersand_test.cpp ]
|
||||
[ compile-fail no_rvalue_to_nonconst_visitation.cpp ]
|
||||
[ compile fusion_interop.cpp ]
|
||||
[ compile fusion_interop.cpp : <library>/boost/fusion//boost_fusion ]
|
||||
[ run variant_polymorphic_get_test.cpp ]
|
||||
[ run variant_multivisit_test.cpp ]
|
||||
[ run hash_variant_test.cpp ]
|
||||
@@ -58,13 +61,13 @@ test-suite variant
|
||||
[ run recursive_variant_test.cpp : : : <rtti>off <define>BOOST_NO_RTTI <define>BOOST_NO_TYPEID : variant_no_rtti_test ]
|
||||
[ run hash_recursive_variant_test.cpp ]
|
||||
[ run variant_swap_test.cpp ]
|
||||
[ run auto_visitors.cpp ]
|
||||
[ run auto_visitors.cpp : : : <library>/boost/lexical_cast//boost_lexical_cast ]
|
||||
[ run issue42.cpp ]
|
||||
[ run issue53.cpp ]
|
||||
[ compile issue53.cpp : <library>/boost/thread//boost_thread ]
|
||||
[ run overload_selection.cpp : : : "<cxxstd>$(since_cpp20)"\:<build>no ]
|
||||
[ run recursive_wrapper_move_test.cpp ]
|
||||
[ run recursive_wrapper_move_test.cpp : : : <library>/boost/array//boost_array ]
|
||||
[ run variant_over_joint_view_test.cpp ]
|
||||
[ run const_ref_apply_visitor.cpp ]
|
||||
;
|
||||
[ run const_ref_apply_visitor.cpp : : : <library>/boost/lexical_cast//boost_lexical_cast ]
|
||||
;
|
||||
|
||||
|
||||
|
||||
+5
-4
@@ -45,10 +45,11 @@ environment:
|
||||
TOOLSET: gcc
|
||||
CXXSTD: 03,11,14,1z
|
||||
VARIANT: release # "variant_get_test.o: File too big" errors in debug
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ADDPATH: C:\mingw\bin;
|
||||
TOOLSET: gcc
|
||||
CXXSTD: 03,11,14,1z
|
||||
# MinGW 32-bit is not supported by Boost.System any more
|
||||
# - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
# ADDPATH: C:\mingw\bin;
|
||||
# TOOLSET: gcc
|
||||
# CXXSTD: 03,11,14,1z
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ADDPATH: C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin;
|
||||
TOOLSET: gcc
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Copyright (c) 2021-2023 Antony Polukhin
|
||||
// Copyright (c) 2021-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Copyright (c) 2011-2023 Antony Polukhin
|
||||
// Copyright (c) 2011-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2018-2023 Antony Polukhin
|
||||
// Copyright (c) 2018-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2019-2023 Antony Polukhin
|
||||
// Copyright (c) 2019-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Copyright (c) 2017-2023 Antony Polukhin
|
||||
// Copyright (c) 2017-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2016-2023 Antony Polukhin
|
||||
// Copyright (c) 2016-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2012-2023 Antony Polukhin
|
||||
// Copyright (c) 2012-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2016-2023 Antony Polukhin
|
||||
// Copyright (c) 2016-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman, Itay Maman
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2014-2023 Antony Polukhin
|
||||
// Copyright (c) 2014-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2003 Eric Friedman
|
||||
// Copyright (c) 2013-2023 Antony Polukhin
|
||||
// Copyright (c) 2013-2026 Antony Polukhin
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// Copyright (c) 2009 ArtVPS Ltd.
|
||||
// Copyright (c) 2013-2023 Antony Polukhin.
|
||||
// Copyright (c) 2013-2026 Antony Polukhin.
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
|
||||
@@ -79,7 +79,7 @@ struct rvalue_ref_decltype_visitor
|
||||
#endif
|
||||
|
||||
template <typename Checker, typename Variant>
|
||||
inline void unary_test(Variant& var, Checker* = BOOST_VARIANT_NULL)
|
||||
inline void unary_test(Variant& var, Checker* = nullptr)
|
||||
{
|
||||
Checker checker;
|
||||
const Checker& const_checker = checker;
|
||||
@@ -97,7 +97,7 @@ inline void unary_test(Variant& var, Checker* = BOOST_VARIANT_NULL)
|
||||
}
|
||||
|
||||
template <typename Checker, typename Variant1, typename Variant2>
|
||||
inline void binary_test(Variant1& var1, Variant2& var2, Checker* = BOOST_VARIANT_NULL)
|
||||
inline void binary_test(Variant1& var1, Variant2& var2, Checker* = nullptr)
|
||||
{
|
||||
Checker checker;
|
||||
const Checker& const_checker = checker;
|
||||
|
||||
Reference in New Issue
Block a user