joaquintides 575a6852b9 fixed BOOST_FLYWEIGHT_NOT_A_PLACEHOLDER_EXPRESSION in the presence of P0522R0 (#23)
* resorted to P0522R0-compliant BOOST_FLYWEIGHT_NOT_A_PLACEHOLDER_EXPRESSION for Clang>=19

* (debugging) output __clang_major__ when available

* unconditionally use P0522R0-compliant BOOST_FLYWEIGHT_NOT_A_PLACEHOLDER_EXPRESSION

* reverted

* added clang++-19 job

* (debugging) output BOOST_MPL_LIMIT_METAFUNCTION_ARITY

* (debugging) #defined BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS

* expanded length of BOOST_FLYWEIGHT_NOT_A_PLACEHOLDER_EXPRESSION

* tried alternative mechanism (draft)

* refined alternative mechanism

* documented not_placeholder_expr.hpp machinery

* updated release notes
2025-09-20 12:39:43 +02:00
2023-02-21 04:47:26 +02:00
2024-09-27 20:00:13 -05:00
2025-06-22 16:55:06 +02:00
2008-12-18 22:18:11 +00:00
2008-12-18 22:18:11 +00:00

Boost.Flyweight

Branch CI Drone status Deps Documentation Enter the Matrix
Branch CI Drone status Deps Documentation Enter the Matrix
BSL 1.0 Header-only library

Flyweights are small-sized handle classes granting constant access to shared common data, thus allowing for the management of large amounts of entities within reasonable memory limits. Boost.Flyweight makes it easy to use this common programming idiom by providing the class template flyweight<T>, which acts as a drop-in replacement for const T.

Learn about Boost.Flyweight

Install Boost.Flyweight

  • Download Boost and you're ready to go (this is a header-only library requiring no building).
  • Using Conan 2: In case you don't have it yet, add an entry for Boost in your conanfile.txt (the example requires at least Boost 1.86):
[requires]
boost/[>=1.86.0]
    If you're not using any compiled Boost library, the following will skip building altogether:
[options]
boost:header_only=True
  • Using vcpkg: Execute the command
vcpkg install boost-flyweight

Support

Contribute

Description
Mirrored via gitea-mirror
Readme 792 KiB
Languages
C++ 98.5%
Shell 0.4%
CMake 0.4%
Batchfile 0.4%
HTML 0.3%