This repository was archived by the owner on Jan 29, 2026. It is now read-only.
Proxy 3.2.0 Release
What's Changed
New Features
- Added extension
basic_facade_builder::support_rtti(enablingproxy_typeidandproxy_cast) for RTTI support as per @qq978358810 and @xuruilong100's feedback. - Added extensions
observer_facade,proxy_viewandbasic_facade_builder::add_viewfor non-owningproxytypes as per @Shuenhoy's feedback. - Added extensions
std::formatter<proxy_indirect_accessor>andbasic_facade_builder::support_format, enablingproxyto work with standard formatting functions such asstd::format. - Added class template
weak_dispatchas a replacement of macroPRO_DEF_WEAK_DISPATCH(deprecated since 3.2). - Added class template
proxy_indirect_accessor, representing the dereferenced state of aproxyobject.
Other Notable
- Revised the design of
conversion_dispatch. In the previous version,conversion_dispatchwas designed as a class template. It has been updated into 2 concrete typesexplicit_conversion_dispatch(aka.conversion_dispatch) andimplicit_conversion_dispatchwithout a template. - Revised the design of
proxy_invokeandproxy_reflect. - Fixed bug #219: ADL for free function accessors was broken for qualified overload resolution.
- Fixed bug #222:
std::in_place_type_toverload resolution was broken when a dispatch is not SFINAE-safe.
Full Changelog
- Improve the release pipeline by @tian-lt in #210
- Update CMakeLists.txt to the latest version by @tian-lt in #211
- Revise design of
conversion_dispatchby @mingxwa in #212 - Suppress unexpected compiler warnings by @mingxwa in #215
- Fix ADL for free function accessors by @mingxwa in #220
- Fix typo in
implicit_conversion_dispatch.mdby @mingxwa in #216 - Add support for
proxy_viewand complementary infrastructure by @mingxwa in #218 - Add direct support for RTTI by @mingxwa in #221
- Fix the
std::in_place_type_toverload for SFINAE-unsafe facades by @mingxwa in #223 - Replace macro
PRO_DEF_WEAK_DISPATCHwith class templateweak_dispatchby @mingxwa in #224 - Simplify
proxy_invokeandproxy_reflectby @mingxwa in #226 - Feature: Support for
std::formatby @mingxwa in #228 - Revise spec for version 3.2 by @mingxwa in #231