Fix missing exports from json.cppm#5137
Fix missing exports from json.cppm#5137mikomikotaishi wants to merge 7 commits intonlohmann:developfrom
json.cppm#5137Conversation
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
| - `nlohmann::ordered_map` | ||
| - `nlohmann::to_string` | ||
| - `nlohmann::detail::json_sax_dom_callback_parser` | ||
| - `nlohmann::detail::unknown_size` |
There was a problem hiding this comment.
Libraries should not rely on any symbols from the details namespace.
There was a problem hiding this comment.
This was in the previous version of the module which is why I kept it in, but if you'd prefer I'll remove it
There was a problem hiding this comment.
Would you prefer that I just omit the mention of nlohmann::detail::* symbols from the documentation, but leave it exported in the module? I wasn't sure why someone (#4952) amended it to export those symbols "for advanced usage", but I'll leave it to your call whether to keep it exported in the module or not, and if to keep it whether to keep it mentioned in the webpage.
There was a problem hiding this comment.
OK, removed nlohmann::detail::* from both the module and the docs
There was a problem hiding this comment.
OK, I didn't realise that #3970 mentioned that exporting these internals was literally necessary on MSVC. I think the most reasonable approach is to export it but leave mention of it omitted from documentation, as it's purely an implementation detail.
There was a problem hiding this comment.
Sounds good. Maybe mention the ticket in the code so we know this in the future.
There was a problem hiding this comment.
Left a comment with the ticket number
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
Signed-off-by: Miko <110693261+mikomikotaishi@users.noreply.github.com>
|
@nlohmann Anything else left to address in this PR? |
[Describe your pull request here. Please read the text below the line and make sure you follow the checklist.]
This pull request restores some missing symbols that were present in the
<nlohmann/json.hpp>header, but weren't exported injson.cppm. These include specialisations in namespacestd(such ashash<>andless<>), as well asnlohmann::literals::json_literals::*. This is necessary as without this those specialisations and symbols are inaccessible from the module.make amalgamate.