-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Try variant2 as Boost.Variant replacement for C++11 #232
Comments
Does |
It's part of GIL extension, the dynamic_image.
This is an interesting idea, thanks. /cc @stefanseefeld |
Is there anyone working on this? I am facing ICE issues with the current implementation, and also would like to be able to write lambda visitors, two motivations to get this job done. |
I don't know anyone working on this, it still needs help.
Yes, indeed, the two blockers have been removed and it is good time to switch the variant. If you'd like to give it a shot, please have my warm welcome. |
I wonder if we should change the API to use variadic template (and remove MPL sequence), e.g. from // Images is an MPL sequence
template <typename Images>
class any_image { ... } to template <typename ... Images>
class any_image<Image1> { ... } would that be an acceptable but breaking change? |
@sdebionne I believe we could attempt SFINAE to preserve old behavior. From the first sight it looks possible, but there may be complications I am unaware of at the moment. |
Assuming that GIL will stop using MPL at some point, old code will break anyway because MPL sequences can't be supported without MPL. So using this as an opportunity to switch to |
Yes, dropping use/support for MPL has been considered a breaking change. |
Maybe I mislead the discussion when I said MPL Sequence, it should read Type Sequence ( |
Hard to say without a concrete example, but my guess would be that it won't. In either case, MPL is so much slower to compile than mp11 that it won't really matter. |
@pdimov's https://github.com/pdimov/variant2 is C++11/14/17 implementation of
std::variant
.@vinniefalco suggested:
So, if trivial indeed, it may be 1) good to provide alternative to Boost.Variant introduced in #231 by @sdebionne 2) observe anycompilation time speed-up
The text was updated successfully, but these errors were encountered: