nlohmann / json

JSON for Modern C++
https://json.nlohmann.me
MIT License
41.3k stars 6.58k forks source link

Docs: Fix wrong code usage in the Value access section of `json_pointer.md` #4255

Closed Fallen-Breath closed 2 months ago

Fallen-Breath commented 6 months ago

The code usage demo in the Value access section of the JSON Pointer document does not work correctly

https://json.nlohmann.me/features/json_pointer/#value-access

https://github.com/nlohmann/json/blob/a259ecc51e1951e12f757ce17db958e9881e9c6c/docs/mkdocs/docs/features/json_pointer.md?plain=1#L62-L78

There are 3 mistakes in the code above:

  1. (line 74) The json pointer "/" does not point to the root object. Instead, it points to the value with an empty string as the key at the root object. It should be replaced with json pointer ""

    https://github.com/nlohmann/json/blob/a259ecc51e1951e12f757ce17db958e9881e9c6c/tests/src/unit-json_pointer.cpp#L91-L92

    https://github.com/nlohmann/json/blob/a259ecc51e1951e12f757ce17db958e9881e9c6c/tests/src/unit-json_pointer.cpp#L68-L70

  2. (line 76) Incorrect usage of nlohmann::basic_json::at. It's a function and does not support the [] operator

  3. (line 77) Incorrect usage of nlohmann::basic_json::value. It's a function and does not support the [] operator. Additionally, the argument 0 as the default value for the value function is incorrectly placed

This PR resolves these 3 mistakes and makes the demo code work correctly


Pull request checklist

Read the Contribution Guidelines for detailed information.

Please don't

coveralls commented 5 months ago

Coverage Status

coverage: 100.0%. remained the same when pulling 4d6cae7e99d70d0a91fba4df7a52743d10acbb2c on Fallen-Breath:patch-1 into a259ecc51e1951e12f757ce17db958e9881e9c6c on nlohmann:develop.