string_path - std::basic_string_view enhancements #128
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In case of using C++17 standard or higher:
Reasoning:
During using boost::property_tree::wptree with standard C++20 I needed to do some special actions when using std::wstring_view due to std::basic_string(std::basic_string_view) ctor being explicit:
std::wstring_view pTreePath{L"some.example"};
wpath rootPTreePath = wpath(L"root") / std::wstring(pTreePath);
wptree pTree{};
...
const auto val = pTree.get_optional(pTreePath.data());
For all standards:
Reasoning:
As someone works with wpath and with std::wstring, string_path<>::dump() forces conversion at first from (String == std::wstring) --(dump())-> std::string --(some other method)-> std::wstring