Reimplement value() access functions#3663
Conversation
81bdea9 to
97b3888
Compare
|
Looks good to me. |
|
I'm trying out a new way of writing/organizing the type traits. I want to clean up using trait_name = std::integral_constant<bool, [trait conditions]>;This, as it turns out, is a bad idea, as it results in poor compiler diagnostics. From memory: "unmet requirement std::integral_constant<bool, false>" The type_traits unit test should also be extended. It did safe me from a small mistake with just a singular trait being tested. Also, I'm only including |
|
It would be great if also someone else had a look at this. @gregmarr ? |
c8b098f to
c67de1a
Compare
|
Fixed the typo. That's it. |
c67de1a to
5911a92
Compare
* Merges the 'const char *' with the 'ValueType &&' overloads. * Fixes ambiguities when default value is 0. * Fixes 'no matching function' error when specifying ValueType template parameter. * Fixes incorrect template parameter order in previous overloads.
Define the macro JSON_TEST_USING_MULTIPLE_HEADERS to 0/1 depending on JSON_MultipleHeaders.
5911a92 to
ced42d5
Compare
falbrechtskirchinger
left a comment
There was a problem hiding this comment.
Looks good to me. (Only fixed a typo since last review.)
Reimplement the
value()functions, reducing the number of overloads from 6+2 to 4+2 (the 2 deprecatedjson_pointer<BasicJsonType>overloads remain) and squashing a few bugs in the process.Update Unit tests to catch reported regressions and test more scenarios.
Fixes #3652.
Fixes #3655.
To Do:
type_traits.hpp, etc.)