Sha256: 336bbc001ae304dbc7f3b17f5195a6a07e157f518fd11f2e8029561f0c64752a

Contents?: true

Size: 1.17 KB

Versions: 45

Compression:

Stored size: 1.17 KB

Contents

// Copyright (C) 2003, 2008 Fernando Luis Cacciola Carballal.
// Copyright (C) 2016 Andrzej Krzemienski.
//
// 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/libs/optional for documentation.
//
// You are welcome to contact the author at:
//  fernando_cacciola@hotmail.com
//  akrzemi1@gmail.com

#ifndef BOOST_OPTIONAL_OPTIONAL_DETAIL_OPTIONAL_FACTORY_SUPPORT_AJK_12FEB2016_HPP
#define BOOST_OPTIONAL_OPTIONAL_DETAIL_OPTIONAL_FACTORY_SUPPORT_AJK_12FEB2016_HPP

// Daniel Wallin discovered that bind/apply.hpp badly interacts with the apply<>
// member template of a factory as used in the optional<> implementation.
// He proposed this simple fix which is to move the call to apply<> outside
// namespace boost.
namespace boost_optional_detail
{
  template <class T, class Factory>
  inline void construct(Factory const& factory, void* address)
  {
    factory.BOOST_NESTED_TEMPLATE apply<T>(address);
  }
}

namespace boost
{
  class in_place_factory_base ;
  class typed_in_place_factory_base ;
}

#endif // header guard

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
passenger-6.0.26 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.25 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.24 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.23 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.20 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.19 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.18 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.17 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.16 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.15 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.14 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.13 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.12 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.11 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.10 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.9 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.8 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.7 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.6 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
passenger-6.0.5 src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp