Skip to content

Support more STL types in from_node #421

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

Merged
merged 4 commits into from
Nov 11, 2024

Conversation

fktn-k
Copy link
Owner

@fktn-k fktn-k commented Nov 11, 2024

This PR added support of much more STL container types in basic_node::get_value() API.
For details, please visit the documentation for the API.
Moreover, the API now accepts basic_node template instance types as its return type to allow conversions to container types whose element type is a basic_node template instance type, e.g., std::array<fkyaml::node, 3> or std::unordered_map<fkyaml::node, fkyaml::node>.
When this library is compiled with C++17 or greater, std::optional can be the return type which holds some converted value on success or std::nullopt otherwise.
Types which were convertible from nodes should still be convertible in the same way.


Pull Request Checklist

Read the CONTRIBUTING.md file for detailed information.

  • Changes are described in the pull request or in a referenced issue.
  • The test suite compiles and runs without any error.
  • The code coverage on your branch is 100%.
  • The documentation is updated if you added/changed a feature.

Please don't

  • The C++11 support varies between different compilers and versions. Please note the list of supported compilers. Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support. Please refrain from proposing changes that work around these compiler's limitations with #ifdefs or other means.
  • Please refrain from proposing changes that would break YAML specifications. If you propose a conformant extension of YAML to be supported by the library, please motivate this extension.
  • Please do not open pull requests that address multiple issues.

@fktn-k fktn-k added the improvement refactoring or optimization without public API changes label Nov 11, 2024
@fktn-k fktn-k added this to the Release v0.3.14 milestone Nov 11, 2024
@fktn-k fktn-k self-assigned this Nov 11, 2024
Copy link

github-actions bot commented Nov 11, 2024

:octocat: Upload Coverage Event Notification

Coverage data has been uploaded for the commit 6815f458ab99ad5628b7d3baa532b43dc3ecb514.
You can download the artifact which contains the same file uploaded to the Coveralls and its HTML version.

Name fkYAML_coverage.pr421.zip
ID 2172937302
URL https://github.com/fktn-k/fkYAML/actions/runs/11784963384/artifacts/2172937302

@fktn-k fktn-k force-pushed the support_more_standard_types_in_from_node branch from 419254a to 6815f45 Compare November 11, 2024 19:29
@fktn-k fktn-k changed the title Support more standard types in from node Support more STL types in from_node Nov 11, 2024
@fktn-k fktn-k merged commit aaaff43 into develop Nov 11, 2024
171 checks passed
@fktn-k fktn-k deleted the support_more_standard_types_in_from_node branch November 11, 2024 19:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement refactoring or optimization without public API changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant