On 17/05/2019 05:41, Michael Caisse wrote:
Peter Dimov has updated the Variant2 library based on review acceptance criteria. I have reviewed the changes and "OK" Variant2 to be included as a Boost library.
My understanding is that Peter is targeting Variant2 to be available in the 1.71.0 release.
Thanks, Peter and Michael! The updated docs look good. Minor nitpicks: 1. Correct me if I'm wrong, but I think the auto lambda visitor in the Rectangle/Circle example requires at least C++14, not merely C++11. The C++11 version would be more verbose. 2. The tutorial provides no indication of when you would want to use in_place_type or in_place_index. 3. "Recursive variants are not supported." I assume that you still can actually make recursive variants using boost::recursive_wrapper directly? (It works with std::variant.) Or using something else unique_ptr-like that allows incomplete types. 4. In the reference section, it would be nice if the "effects: equivalent to X" had hyperlinks to the reference for the particular X they're talking about. Given several overloads with the same names (and where the method name is often buried behind a long return type) it can take a little while to verify that you've found the right one. :)