0ad/source/third_party/jsonspirit
Ralph Sennhauser a9241f4cc7
Use std::placeholders for json_spirit
"bind.hpp" was moved in boost-1.39. [1]

Placeholders were moved in boost 1.60. [2]

Since boost 1.73 placeholders defined in global namespace are
deprectared. [3]

Boost 1.76 added support for using std::placeholders with
boost::bind. [4]

This change uses the new, cough, location of the header and
std::placerholders for boost 1.76 plus to silence the deprecation
warning there.

Following commits are from https://github.com/boostorg/bind.git
[1] 8f507b9aeca643ca78e6a712b6d300720627c0ed
[2] db56733e4ed2125944b89e01cf36a9e451dd36f5
[3] 2797f0dc33caaae126a416bf613bd11267ba3353
[4] c85b31e3d200dda2a73cf0027a82c6d8e29066f8

Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
2024-10-24 19:53:23 +02:00
..
json_spirit_error_position.h Update JSON_SPIRIT from 4.06 to 4.08 2020-12-31 10:25:34 +00:00
json_spirit_reader_template.h Use std::placeholders for json_spirit 2024-10-24 19:53:23 +02:00
json_spirit_value.h Fix most Clang 10 Warnings 2020-12-31 14:25:37 +00:00
json_spirit_writer_options.h Update JSON_SPIRIT from 4.06 to 4.08 2020-12-31 10:25:34 +00:00
json_spirit_writer_template.h Remove unused typedef in json_spirit 2024-09-28 21:55:30 +02:00
LICENSE.txt Update JSON_SPIRIT from 4.06 to 4.08 2020-12-31 10:25:34 +00:00
README.txt Update JSON_SPIRIT from 4.06 to 4.08 2020-12-31 10:25:34 +00:00

This separate JSON library is used for Atlas to avoid the SpiderMonkey dependency.
SpiderMonkey is a fully featured JS engine and even though we already use it for the main engine, it's too heavy-weight to use it in Atlas.
The SpiderMonkey API also changes frequently and we hope that the JSON parsing code needs less changes when we use this separate library.

Get the library from here:
http://www.codeproject.com/Articles/20027/JSON-Spirit-A-C-JSON-Parser-Generator-Implemented

The currently used version was released on the 10 of May 2014.

Search for this comment in json_spirit_value.h and uncomment the lines we don't need:
// comment out the value types you don't need to reduce build times and intermediate file sizes