-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Remove Boost dependency #309
Conversation
Borrows the 'proxy reference' technique used in the boost templates
The proxy reference pattern used in Boost iterators to provide pointers to temporary values requires that -> actually returns a 'proxy' object that further has -> applied in the calling scope
Have built and used this branch for another (boost-less) project. Haven't yet encountered a problem. |
Replaced auto_ptr with unique_ptr.
@bafonso thanks for the heads up! MSVC is a bit behind Clang and GCC in terms of C++11 support but I'll see if I can get it building. |
Hi @blair1618 , I feel a bit stupid! I could build using Cmake-gui once I pulled the right brach from your repository! I can compile it but I have yet to use it, hopefully in the next hours. But it appears to have compiled well. I just thought these had been included in the main yaml-cpp, from where I just pulled the master branch. My mistake |
@bafonso oh that's good! If you're able to compile and run the yaml-cpp tests successfully that would be good information to know, as I actually don't have a copy of VS2013 handy. |
Here's what I get by building RUN_TESTS in VS2013. I also ran run-tests.exe and output is below this one.
run-tests.log
|
The code does compile 100%, see output from BUILD_ALL:
|
Amazing, idea! But since yaml-cpp is added to my project i also use boost and i love it. As i use VS2012, it does not support C++11. This annoyes me really, but it is okay since i got boost. Firs idea while getting yaml-cpp was "holly crap why do i need boost for this small thing". |
Will this pull request ever be merged into the main release? I would love to have a yaml-cpp without requiring boost. |
I can rebase onto master and fix the current conflicts. @jbeder would you prefer commits squashed? |
I do prefer squashed commits. My initial plan has been to fix some outstanding bugs, cut a release, then merge this. But I've been unable to find the time. I suppose I'll just skip the bugs. I'll aim to start reviewing this change in the next week or so, after you merge. Sorry about the delays, everyone. |
It's been a while. Can I motivate someone with a bounty to finish this? |
Since there's apparent demand, I can find some time this week to finish this up. |
It seems version 0.5.2 has the problem of C2220 and C4819 under Visual Studio 2015. |
Closing in favor of #342 |
Replaces usages of Boost template classes with equivalent C++11 STL classes. In the case of Boost::Iterator_Facade and Boost::Iterator_Adaptor, the STL has no direct equivalent so the functionality needed from the Boost classes was replicated as simply as possible.
All tests are passing on GCC 4.9 and Clang 3.6, though I have not yet tested on MSVC.