Unverified Commit 97309f0d authored by Niels Lohmann's avatar Niels Lohmann

Merge branch 'release/3.1.0' into develop

parents ce7d0ebf a8fcfd98
...@@ -26,11 +26,11 @@ Please stick to the [issue template](https://github.com/nlohmann/json/blob/devel ...@@ -26,11 +26,11 @@ Please stick to the [issue template](https://github.com/nlohmann/json/blob/devel
## Files to change ## Files to change
:exclamation: Before you make any changes, note the single-header file [`src/json.hpp`](https://github.com/nlohmann/json/blob/develop/src/json.hpp) is **generated** from the source files in the [`develop` directory](https://github.com/nlohmann/json/tree/develop/develop). Please **do not** edit file `src/json.hpp` directly, but change the `develop` sources and regenerate file `src/json.hpp` by executing `make amalgamate`. :exclamation: Before you make any changes, note the single-header file [`single_include/nlohmann/json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp) is **generated** from the source files in the [`include/nlohmann` directory](https://github.com/nlohmann/json/tree/develop/include/nlohmann). Please **do not** edit file `single_include/nlohmann/json.hpp` directly, but change the `include/nlohmann` sources and regenerate file `single_include/nlohmann/json.hpp` by executing `make amalgamate`.
To make changes, you need to edit the following files: To make changes, you need to edit the following files:
1. [`develop/*`](https://github.com/nlohmann/json/tree/develop/develop) - These files are the sources of the library. Before testing or creating a pull request, execute `make amalgamate` to regenerate `src/json.hpp`. 1. [`include/nlohmann/*`](https://github.com/nlohmann/json/tree/develop/include/nlohmann) - These files are the sources of the library. Before testing or creating a pull request, execute `make amalgamate` to regenerate `single_include/nlohmann/json.hpp`.
2. [`test/src/unit-*.cpp`](https://github.com/nlohmann/json/tree/develop/test/src) - These files contain the [Catch](https://github.com/philsquared/Catch) unit tests which currently cover [100 %](https://coveralls.io/github/nlohmann/json) of the library's code. 2. [`test/src/unit-*.cpp`](https://github.com/nlohmann/json/tree/develop/test/src) - These files contain the [Catch](https://github.com/philsquared/Catch) unit tests which currently cover [100 %](https://coveralls.io/github/nlohmann/json) of the library's code.
......
...@@ -9,7 +9,7 @@ Read the [Contribution Guidelines](https://github.com/nlohmann/json/blob/develop ...@@ -9,7 +9,7 @@ Read the [Contribution Guidelines](https://github.com/nlohmann/json/blob/develop
- [ ] Changes are described in the pull request, or an [existing issue is referenced](https://github.com/nlohmann/json/issues). - [ ] Changes are described in the pull request, or an [existing issue is referenced](https://github.com/nlohmann/json/issues).
- [ ] The test suite [compiles and runs](https://github.com/nlohmann/json/blob/develop/README.md#execute-unit-tests) without error. - [ ] The test suite [compiles and runs](https://github.com/nlohmann/json/blob/develop/README.md#execute-unit-tests) without error.
- [ ] [Code coverage](https://coveralls.io/github/nlohmann/json) is 100%. Test cases can be added by editing the [test suite](https://github.com/nlohmann/json/tree/develop/test/src). - [ ] [Code coverage](https://coveralls.io/github/nlohmann/json) is 100%. Test cases can be added by editing the [test suite](https://github.com/nlohmann/json/tree/develop/test/src).
- [ ] The source code is amalgamated; that is, after making changes to the sources in the `develop` directory, run `make amalgamate` to create the single-header file `src/json.hpp`. The whole process is described [here](https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md#files-to-change). - [ ] The source code is amalgamated; that is, after making changes to the sources in the `include/nlohmann` directory, run `make amalgamate` to create the single-header file `single_include/nlohmann/json.hpp`. The whole process is described [here](https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md#files-to-change).
## Please don't ## Please don't
......
...@@ -291,11 +291,3 @@ script: ...@@ -291,11 +291,3 @@ script:
- cmake .. ${CMAKE_OPTIONS} -GNinja && cmake --build . --config Release - cmake .. ${CMAKE_OPTIONS} -GNinja && cmake --build . --config Release
- ctest -C Release -V -j - ctest -C Release -V -j
- cd .. - cd ..
# check if homebrew works (only checks develop branch)
- if [ `which brew` ]; then
brew update ;
brew tap nlohmann/json ;
brew install nlohmann_json --HEAD ;
brew test nlohmann_json ;
fi
...@@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.0.0) ...@@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.0.0)
## PROJECT ## PROJECT
## name and version ## name and version
## ##
project(nlohmann_json VERSION 3.0.1 LANGUAGES CXX) project(nlohmann_json VERSION 3.1.0 LANGUAGES CXX)
## ##
## INCLUDE ## INCLUDE
......
# Change Log # Change Log
All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).
## [v3.1.0](https://github.com/nlohmann/json/releases/tag/v3.1.0) (2018-02-01)
[Full Changelog](https://github.com/nlohmann/json/compare/v3.0.1...v3.1.0)
- I have a proposal [\#949](https://github.com/nlohmann/json/issues/949)
- VERSION define\(s\) [\#948](https://github.com/nlohmann/json/issues/948)
- v3.0.1 compile error in icc 16.0.4 [\#947](https://github.com/nlohmann/json/issues/947)
- Use in VS2017 15.5.5 [\#946](https://github.com/nlohmann/json/issues/946)
- Process for reporting Security Bugs? [\#945](https://github.com/nlohmann/json/issues/945)
- Please expose a NLOHMANN\_JSON\_VERSION macro [\#943](https://github.com/nlohmann/json/issues/943)
- Change header include directory to nlohmann/json [\#942](https://github.com/nlohmann/json/issues/942)
- string\_type in binary\_reader [\#941](https://github.com/nlohmann/json/issues/941)
- compile error with clang 5.0 -std=c++1z and no string\_view [\#939](https://github.com/nlohmann/json/issues/939)
- Allow overriding JSON\_THROW to something else than abort\(\) [\#938](https://github.com/nlohmann/json/issues/938)
- Handle invalid string in Json file [\#937](https://github.com/nlohmann/json/issues/937)
- Unused variable 'kMinExp' [\#935](https://github.com/nlohmann/json/issues/935)
- test [\#934](https://github.com/nlohmann/json/issues/934)
- yytext is already defined [\#933](https://github.com/nlohmann/json/issues/933)
- Equality operator fails [\#931](https://github.com/nlohmann/json/issues/931)
- use in visual studio 2015 [\#929](https://github.com/nlohmann/json/issues/929)
- Relative includes of json\_fwd.hpp in detail/meta.hpp. \[Develop branch\] [\#928](https://github.com/nlohmann/json/issues/928)
- GCC 7.x issue [\#926](https://github.com/nlohmann/json/issues/926)
- json\_fwd.hpp not installed [\#923](https://github.com/nlohmann/json/issues/923)
- Use Google Benchmarks [\#921](https://github.com/nlohmann/json/issues/921)
- Move class json\_pointer to separate file [\#920](https://github.com/nlohmann/json/issues/920)
- Unable to locate 'to\_json\(\)' and 'from\_json\(\)' methods in the same namespace [\#917](https://github.com/nlohmann/json/issues/917)
- \[answered\]Read key1 from .value example [\#914](https://github.com/nlohmann/json/issues/914)
- Don't use `define private public` in test files [\#913](https://github.com/nlohmann/json/issues/913)
- value\(\) template argument type deduction [\#912](https://github.com/nlohmann/json/issues/912)
- Installation path is incorrect [\#910](https://github.com/nlohmann/json/issues/910)
- H [\#909](https://github.com/nlohmann/json/issues/909)
- Build failure using clang 5 [\#908](https://github.com/nlohmann/json/issues/908)
- Amalgate [\#907](https://github.com/nlohmann/json/issues/907)
- Update documentation and tests wrt. split headers [\#906](https://github.com/nlohmann/json/issues/906)
- Lib not working on ubuntu 16.04 [\#905](https://github.com/nlohmann/json/issues/905)
- Problem when writing to file. [\#904](https://github.com/nlohmann/json/issues/904)
- C2864 error when compiling with VS2015 and VS 2017 [\#903](https://github.com/nlohmann/json/issues/903)
- \[json.exception.type\_error.304\] cannot use at\(\) with object [\#902](https://github.com/nlohmann/json/issues/902)
- How do I forward nlohmann::json declaration? [\#899](https://github.com/nlohmann/json/issues/899)
- How to effectively store binary data? [\#898](https://github.com/nlohmann/json/issues/898)
- How to get the length of a JSON string without retrieving its std::string? [\#897](https://github.com/nlohmann/json/issues/897)
- Regression Tests Failure using "ctest" [\#887](https://github.com/nlohmann/json/issues/887)
- Discuss: add JSON Merge Patch \(RFC 7396\)? [\#877](https://github.com/nlohmann/json/issues/877)
- Discuss: replace static "iterator\_wrapper" function with "items" member function [\#874](https://github.com/nlohmann/json/issues/874)
- Make optional user-data available in from\_json [\#864](https://github.com/nlohmann/json/issues/864)
- Casting to std::string not working in VS2015 [\#861](https://github.com/nlohmann/json/issues/861)
- Sequential reading of JSON arrays [\#851](https://github.com/nlohmann/json/issues/851)
- Idea: Handle Multimaps Better [\#816](https://github.com/nlohmann/json/issues/816)
- Floating point rounding [\#777](https://github.com/nlohmann/json/issues/777)
- Loss of precision when serializing \<double\> [\#360](https://github.com/nlohmann/json/issues/360)
- Templatize std::string in binary\_reader \#941 [\#950](https://github.com/nlohmann/json/pull/950) ([kaidokert](https://github.com/kaidokert))
- fix cmake install directory \(for real this time\) [\#944](https://github.com/nlohmann/json/pull/944) ([theodelrieu](https://github.com/theodelrieu))
- Allow overriding THROW/CATCH/TRY macros with no-exceptions \#938 [\#940](https://github.com/nlohmann/json/pull/940) ([kaidokert](https://github.com/kaidokert))
- Removed compiler warning about unused variable 'kMinExp' [\#936](https://github.com/nlohmann/json/pull/936) ([zerodefect](https://github.com/zerodefect))
- Fix a typo in README.md [\#930](https://github.com/nlohmann/json/pull/930) ([Pipeliner](https://github.com/Pipeliner))
- Howto installation of json\_fwd.hpp \(fixes \#923\) [\#925](https://github.com/nlohmann/json/pull/925) ([zerodefect](https://github.com/zerodefect))
- fix sfinae on basic\_json UDT constructor [\#919](https://github.com/nlohmann/json/pull/919) ([theodelrieu](https://github.com/theodelrieu))
- Floating-point formatting [\#915](https://github.com/nlohmann/json/pull/915) ([abolz](https://github.com/abolz))
- Fix/cmake install [\#911](https://github.com/nlohmann/json/pull/911) ([theodelrieu](https://github.com/theodelrieu))
- fix link to the documentation of the emplace function [\#900](https://github.com/nlohmann/json/pull/900) ([Dobiasd](https://github.com/Dobiasd))
- JSON Merge Patch \(RFC 7396\) [\#876](https://github.com/nlohmann/json/pull/876) ([nlohmann](https://github.com/nlohmann))
- Refactor/split it [\#700](https://github.com/nlohmann/json/pull/700) ([theodelrieu](https://github.com/theodelrieu))
## [v3.0.1](https://github.com/nlohmann/json/releases/tag/v3.0.1) (2017-12-29) ## [v3.0.1](https://github.com/nlohmann/json/releases/tag/v3.0.1) (2017-12-29)
[Full Changelog](https://github.com/nlohmann/json/compare/v3.0.0...v3.0.1) [Full Changelog](https://github.com/nlohmann/json/compare/v3.0.0...v3.0.1)
...@@ -653,7 +716,7 @@ All notable changes to this project will be documented in this file. This projec ...@@ -653,7 +716,7 @@ All notable changes to this project will be documented in this file. This projec
- Compilation error. [\#273](https://github.com/nlohmann/json/issues/273) - Compilation error. [\#273](https://github.com/nlohmann/json/issues/273)
- dump\(\) performance degradation in v2 [\#272](https://github.com/nlohmann/json/issues/272) - dump\(\) performance degradation in v2 [\#272](https://github.com/nlohmann/json/issues/272)
- fixed a tiny typo [\#271](https://github.com/nlohmann/json/pull/271) ([thelostt](https://github.com/thelostt)) - fixed a tiny typo [\#271](https://github.com/nlohmann/json/pull/271) ([feroldi](https://github.com/feroldi))
## [v2.0.0](https://github.com/nlohmann/json/releases/tag/v2.0.0) (2016-06-23) ## [v2.0.0](https://github.com/nlohmann/json/releases/tag/v2.0.0) (2016-06-23)
[Full Changelog](https://github.com/nlohmann/json/compare/v1.1.0...v2.0.0) [Full Changelog](https://github.com/nlohmann/json/compare/v1.1.0...v2.0.0)
......
MIT License MIT License
Copyright (c) 2013-2017 Niels Lohmann Copyright (c) 2013-2018 Niels Lohmann
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
[![Coverage Status](https://img.shields.io/coveralls/nlohmann/json.svg)](https://coveralls.io/r/nlohmann/json) [![Coverage Status](https://img.shields.io/coveralls/nlohmann/json.svg)](https://coveralls.io/r/nlohmann/json)
[![Coverity Scan Build Status](https://scan.coverity.com/projects/5550/badge.svg)](https://scan.coverity.com/projects/nlohmann-json) [![Coverity Scan Build Status](https://scan.coverity.com/projects/5550/badge.svg)](https://scan.coverity.com/projects/nlohmann-json)
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/f3732b3327e34358a0e9d1fe9f661f08)](https://www.codacy.com/app/nlohmann/json?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=nlohmann/json&amp;utm_campaign=Badge_Grade) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/f3732b3327e34358a0e9d1fe9f661f08)](https://www.codacy.com/app/nlohmann/json?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=nlohmann/json&amp;utm_campaign=Badge_Grade)
[![Try online](https://img.shields.io/badge/try-online-blue.svg)](https://wandbox.org/permlink/Op57X0V7fTf2tdwl) [![Try online](https://img.shields.io/badge/try-online-blue.svg)](https://wandbox.org/permlink/VHpbaZBOnrZcbn7j)
[![Documentation](https://img.shields.io/badge/docs-doxygen-blue.svg)](http://nlohmann.github.io/json) [![Documentation](https://img.shields.io/badge/docs-doxygen-blue.svg)](http://nlohmann.github.io/json)
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/nlohmann/json/master/LICENSE.MIT) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/nlohmann/json/master/LICENSE.MIT)
[![GitHub Releases](https://img.shields.io/github/release/nlohmann/json.svg)](https://github.com/nlohmann/json/releases) [![GitHub Releases](https://img.shields.io/github/release/nlohmann/json.svg)](https://github.com/nlohmann/json/releases)
...@@ -40,7 +40,7 @@ There are myriads of [JSON](http://json.org) libraries out there, and each may e ...@@ -40,7 +40,7 @@ There are myriads of [JSON](http://json.org) libraries out there, and each may e
- **Intuitive syntax**. In languages such as Python, JSON feels like a first class data type. We used all the operator magic of modern C++ to achieve the same feeling in your code. Check out the [examples below](#examples) and you'll know what I mean. - **Intuitive syntax**. In languages such as Python, JSON feels like a first class data type. We used all the operator magic of modern C++ to achieve the same feeling in your code. Check out the [examples below](#examples) and you'll know what I mean.
- **Trivial integration**. Our whole code consists of a single header file [`json.hpp`](https://github.com/nlohmann/json/blob/develop/src/json.hpp). That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings. - **Trivial integration**. Our whole code consists of a single header file [`json.hpp`](https://github.com/nlohmann/json/blob/single_include/nlohmann/json.hpp). That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings.
- **Serious testing**. Our class is heavily [unit-tested](https://github.com/nlohmann/json/blob/master/test/src/unit.cpp) and covers [100%](https://coveralls.io/r/nlohmann/json) of the code, including all exceptional behavior. Furthermore, we checked with [Valgrind](http://valgrind.org) that there are no memory leaks. To maintain high quality, the project is following the [Core Infrastructure Initiative (CII) best practices](https://bestpractices.coreinfrastructure.org/projects/289). - **Serious testing**. Our class is heavily [unit-tested](https://github.com/nlohmann/json/blob/master/test/src/unit.cpp) and covers [100%](https://coveralls.io/r/nlohmann/json) of the code, including all exceptional behavior. Furthermore, we checked with [Valgrind](http://valgrind.org) that there are no memory leaks. To maintain high quality, the project is following the [Core Infrastructure Initiative (CII) best practices](https://bestpractices.coreinfrastructure.org/projects/289).
...@@ -55,7 +55,7 @@ See the [contribution guidelines](https://github.com/nlohmann/json/blob/master/. ...@@ -55,7 +55,7 @@ See the [contribution guidelines](https://github.com/nlohmann/json/blob/master/.
## Integration ## Integration
The single required source, file `json.hpp` is in the `src` directory or [released here](https://github.com/nlohmann/json/releases). All you need to do is add The single required source, file `json.hpp` is in the `single_include/nlohmann` directory or [released here](https://github.com/nlohmann/json/releases). All you need to do is add
```cpp ```cpp
#include "json.hpp" #include "json.hpp"
...@@ -66,7 +66,7 @@ using json = nlohmann::json; ...@@ -66,7 +66,7 @@ using json = nlohmann::json;
to the files you want to use JSON objects. That's it. Do not forget to set the necessary switches to enable C++11 (e.g., `-std=c++11` for GCC and Clang). to the files you want to use JSON objects. That's it. Do not forget to set the necessary switches to enable C++11 (e.g., `-std=c++11` for GCC and Clang).
You can further use file [`develop/json_fwd.hpp`](https://github.com/nlohmann/json/blob/develop/develop/json_fwd.hpp) for forward-declarations. The installation of json_fwd.hpp (as part of cmake's install step), can be achieved by setting `-DJSON_MultipleHeaders=ON`: You can further use file [`include/json_fwd.hpp`](https://github.com/nlohmann/json/blob/develop/develop/json_fwd.hpp) for forward-declarations. The installation of json_fwd.hpp (as part of cmake's install step), can be achieved by setting `-DJSON_MultipleHeaders=ON`:
### Package Managers ### Package Managers
...@@ -908,7 +908,7 @@ I deeply appreciate the help of the following people. ...@@ -908,7 +908,7 @@ I deeply appreciate the help of the following people.
- [duncanwerner](https://github.com/duncanwerner) found a really embarrassing performance regression in the 2.0.0 release. - [duncanwerner](https://github.com/duncanwerner) found a really embarrassing performance regression in the 2.0.0 release.
- [Damien](https://github.com/dtoma) fixed one of the last conversion warnings. - [Damien](https://github.com/dtoma) fixed one of the last conversion warnings.
- [Thomas Braun](https://github.com/t-b) fixed a warning in a test case. - [Thomas Braun](https://github.com/t-b) fixed a warning in a test case.
- [Théo DELRIEU](https://github.com/theodelrieu) patiently and constructively oversaw the long way toward [iterator-range parsing](https://github.com/nlohmann/json/issues/290). He also implemented the magic behind the serialization/deserialization of user-defined types. - [Théo DELRIEU](https://github.com/theodelrieu) patiently and constructively oversaw the long way toward [iterator-range parsing](https://github.com/nlohmann/json/issues/290). He also implemented the magic behind the serialization/deserialization of user-defined types and split the single header file into smaller chunks.
- [Stefan](https://github.com/5tefan) fixed a minor issue in the documentation. - [Stefan](https://github.com/5tefan) fixed a minor issue in the documentation.
- [Vasil Dimov](https://github.com/vasild) fixed the documentation regarding conversions from `std::multiset`. - [Vasil Dimov](https://github.com/vasild) fixed the documentation regarding conversions from `std::multiset`.
- [ChristophJud](https://github.com/ChristophJud) overworked the CMake files to ease project inclusion. - [ChristophJud](https://github.com/ChristophJud) overworked the CMake files to ease project inclusion.
...@@ -967,6 +967,8 @@ I deeply appreciate the help of the following people. ...@@ -967,6 +967,8 @@ I deeply appreciate the help of the following people.
- [abolz](https://github.com/abolz) integrated the Grisu2 algorithm for proper floating-point formatting, allowing more roundtrip checks to succeed. - [abolz](https://github.com/abolz) integrated the Grisu2 algorithm for proper floating-point formatting, allowing more roundtrip checks to succeed.
- [Vadim Evard](https://github.com/Pipeliner) fixed a Markdown issue in the README. - [Vadim Evard](https://github.com/Pipeliner) fixed a Markdown issue in the README.
- [zerodefect](https://github.com/zerodefect) fixed a compiler warning. - [zerodefect](https://github.com/zerodefect) fixed a compiler warning.
- [Kert](https://github.com/kaidokert) allowed to template the string type in the serialization and added the possibility to override the exceptional behavior.
- [mark-99](https://github.com/mark-99) helped fixing an ICC error.
Thanks a lot for helping out! Please [let me know](mailto:mail@nlohmann.me) if I forgot someone. Thanks a lot for helping out! Please [let me know](mailto:mail@nlohmann.me) if I forgot someone.
...@@ -996,7 +998,7 @@ The library itself contains of a single header file licensed under the MIT licen ...@@ -996,7 +998,7 @@ The library itself contains of a single header file licensed under the MIT licen
- [**send_to_wandbox**](https://github.com/nlohmann/json/blob/develop/doc/scripts/send_to_wandbox.py) to send code examples to [Wandbox](http://melpon.org/wandbox) - [**send_to_wandbox**](https://github.com/nlohmann/json/blob/develop/doc/scripts/send_to_wandbox.py) to send code examples to [Wandbox](http://melpon.org/wandbox)
- [**Travis**](https://travis-ci.org) for [continuous integration](https://travis-ci.org/nlohmann/json) on Linux and macOS - [**Travis**](https://travis-ci.org) for [continuous integration](https://travis-ci.org/nlohmann/json) on Linux and macOS
- [**Valgrind**](http://valgrind.org) to check for correct memory management - [**Valgrind**](http://valgrind.org) to check for correct memory management
- [**Wandbox**](http://melpon.org/wandbox) for [online examples](https://wandbox.org/permlink/Op57X0V7fTf2tdwl) - [**Wandbox**](http://melpon.org/wandbox) for [online examples](https://wandbox.org/permlink/VHpbaZBOnrZcbn7j)
## Projects using JSON for Modern C++ ## Projects using JSON for Modern C++
......
...@@ -12,7 +12,7 @@ add_subdirectory(thirdparty/benchmark) ...@@ -12,7 +12,7 @@ add_subdirectory(thirdparty/benchmark)
# header directories # header directories
include_directories(thirdparty) include_directories(thirdparty)
include_directories(${CMAKE_SOURCE_DIR}/src) include_directories(${CMAKE_SOURCE_DIR}/../single_include)
# copy test files to build folder # copy test files to build folder
file(COPY ${CMAKE_SOURCE_DIR}/data DESTINATION .) file(COPY ${CMAKE_SOURCE_DIR}/data DESTINATION .)
......
#include "benchmark/benchmark.h" #include "benchmark/benchmark.h"
#include "json.hpp" #include <nlohmann/json.hpp>
#include <fstream> #include <fstream>
using json = nlohmann::json; using json = nlohmann::json;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8 DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "JSON for Modern C++" PROJECT_NAME = "JSON for Modern C++"
PROJECT_NUMBER = 3.0.1 PROJECT_NUMBER = 3.1.0
PROJECT_BRIEF = PROJECT_BRIEF =
PROJECT_LOGO = PROJECT_LOGO =
OUTPUT_DIRECTORY = . OUTPUT_DIRECTORY = .
...@@ -29,7 +29,7 @@ INHERIT_DOCS = YES ...@@ -29,7 +29,7 @@ INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = YES SEPARATE_MEMBER_PAGES = YES
TAB_SIZE = 4 TAB_SIZE = 4
ALIASES = "complexity=@par Complexity^^" \ ALIASES = "complexity=@par Complexity^^" \
"liveexample{2}=@par Example^^ \1 ^^ @includelineno \2.cpp \n Output (play with this example @htmlinclude \2.link):^^ @verbinclude \2.output ^^ The <a href= https://github.com/nlohmann/json/blob/develop/doc/examples/\2.cpp>example code</a> above can be translated with @verbatim g++ -std=c++11 -Isrc doc/examples/\2.cpp -o \2 @endverbatim" \ "liveexample{2}=@par Example^^ \1 ^^ @includelineno \2.cpp \n Output (play with this example @htmlinclude \2.link):^^ @verbinclude \2.output ^^ The <a href= https://github.com/nlohmann/json/blob/develop/doc/examples/\2.cpp>example code</a> above can be translated with @verbatim g++ -std=c++11 -Isingle_include doc/examples/\2.cpp -o \2 @endverbatim" \
"requirement=@par Requirements^^" \ "requirement=@par Requirements^^" \
"exceptionsafety=@par Exception safety^^" \ "exceptionsafety=@par Exception safety^^" \
"iterators=@par Iterator validity^^" "iterators=@par Iterator validity^^"
...@@ -107,7 +107,7 @@ WARN_LOGFILE = ...@@ -107,7 +107,7 @@ WARN_LOGFILE =
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to the input files # Configuration options related to the input files
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
INPUT = ../src/json.hpp \ INPUT = ../single_include/nlohmann/json.hpp \
index.md \ index.md \
faq.md \ faq.md \
binary_formats.md binary_formats.md
......
SRCDIR = ../src SRCDIR = ../single_include
SED:=$(shell command -v gsed || which sed) SED:=$(shell command -v gsed || which sed)
all: doxygen all: doxygen
...@@ -28,7 +28,7 @@ EXAMPLES = $(wildcard examples/*.cpp) ...@@ -28,7 +28,7 @@ EXAMPLES = $(wildcard examples/*.cpp)
%.link: %.cpp %.link: %.cpp
rm -fr tmp rm -fr tmp
mkdir tmp mkdir tmp
cp $(SRCDIR)/json.hpp tmp cp -r $(SRCDIR)/nlohmann tmp
scripts/send_to_wandbox.py tmp $< > $@.tmp scripts/send_to_wandbox.py tmp $< > $@.tmp
/bin/echo -n "<a target=\"_blank\" href=\"`cat $@.tmp`\"><b>online</b></a>" > $@ /bin/echo -n "<a target=\"_blank\" href=\"`cat $@.tmp`\"><b>online</b></a>" > $@
rm -fr tmp $@.tmp rm -fr tmp $@.tmp
......
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/Op57X0V7fTf2tdwl"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/VHpbaZBOnrZcbn7j"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/jKwlQd7pFg6UcIN5"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/piWraYhVg2CV3j2H"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/FR2yYACZpx0k3Rzp"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/wtWzPSQWWiuxldVs"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/aeF8S2D89A8lfVx1"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/Zh3iTnZNxsSgBvm3"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/GmNdQadc8cWDzYpn"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/MfM8XIuPWMvxxdeb"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/zLkp80JFsKEuPd1t"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/eFEcnFZxfdLGSMhw"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/3RO0naQeY3cWXNAz"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/ST2lraxpPLdDOUFn"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/LwtGNqrGgjcWey3P"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/FkPwquIlr9pojvGf"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/VXTfLJQl9x7NaHrI"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/AxHC1Xl6KALWJ0FJ"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
#include <unordered_map> #include <unordered_map>
#include <unordered_set> #include <unordered_set>
#include <valarray> #include <valarray>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/s7Ecy7hDYSmUWHyx"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/pylFciQUhOx6zXW8"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
...@@ -28,10 +28,10 @@ ...@@ -28,10 +28,10 @@
1024 1024
-17 -17
8 8
3.14159265358979 3.141592653589793
null null
null null
42.2299995422363 42.22999954223633
null null
23.42 23.42
......
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/qpFQRSCnP6iVb3dF"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/KCfRvbW3QTvghlFb"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/hRrKgHP2a0zgdxJ1"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/TM0OkdSgEIGBDbrv"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/4p0zccjr9gUI65H2"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/jWDJPXw490IFoVL1"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/XyDVBlGsU1DHpRl9"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/FR2ImEj05R1bqqZ2"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/Z1uToOcza9ALJxNU"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/XTHN0lMT9QsmBcBy"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/JQUGGZT8qZyQsHRv"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/iCwvXJinCVY7q1vi"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/l4fEe7Un5ctCQNuA"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/BzyeWqt4uTQ2nbfx"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/BRt1QpTsOBkiVcRC"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/zFWa3Zyot2oM3Z8O"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/zTlubIHYOK6EGxnc"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/ECfvMr4m68Mfr192"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/NlKuJEkKDx7IhN9Z"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/LNck7Gktm14bmPy0"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/fTnaiB7w2ocgAsw8"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/xKAi3HGAdCU5y2dS"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/I7blCyINJHBX81JG"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/oKNo3GDUa9cxjgVB"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/LQmVooyLiQWjqnra"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/mP4cOSG4MtXmXlFw"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/bJHYVEctvmaszdBj"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/0W6xYpQWS5Kd64CF"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/nAD5pUgjv1DcMhh7"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/4qmbLSA75stzPgtZ"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/3ylcqXCMzsKBSkxZ"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/mcjh1kDXXkzq7TxM"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/viOKm4V0ccy238mU"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/6tH3hnp53iVzAQZQ"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/QJlGaO7RqgvibCbR"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/tfI8DuCuZs3VB9VF"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/mHH9TibITCYPpLwy"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/uC4kna7QsQ0rAt80"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/xc7HomW1EFM5PV6n"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/zIQBGY6fKqiMmbvb"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/2WSVQXWzRVuAg5pV"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/QEbpCnjGIpFWmYbE"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/1fN2q9R8yJ9LCSlm"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/AcEmkGmmmz0dPdHW"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/akgHtQw6EFosJSDq"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/rSTMI3VXUFtNCWNc"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/LbNMVYCXawbEelo0"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/nh51Nho7iuAAAPyk"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/KknUwdprg6lIp5YK"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/xqf45a27zQqgthtB"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/IN4AQ9AD1JPDNj9Q"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/lMcaGzTQuWn44ly1"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/xCM0BG9ZV6iEMdgr"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/7fA2QoclBNAGZprY"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/yHjdsKGTYSRFNzD7"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/9ESgIBWRarZRJvCw"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/iu2BpRtjiKeJu2pv"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/AQubfCmv848Q66Zi"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/EBqdb2uhXyKTbr9f"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/E1HQedkl1zo48WW5"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/NkSIj6G89DXRXX9u"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/mya8dUDcDDVoUlBZ"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/DlKRo80ESI428gH8"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/sMmEKxW5MGOgLC7z"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/sUHQtigs99PkzlID"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/qq29jfETq7nZRrh5"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
#include <iostream> #include <iostream>
#include "json.hpp" #include <nlohmann/json.hpp>
using json = nlohmann::json; using json = nlohmann::json;
......
<a target="_blank" href="https://wandbox.org/permlink/bK69SEGarbCwnqIB"><b>online</b></a> <a target="_blank" href="https://wandbox.org/permlink/5NtCbAfPzCmmPd5S"><b>online</b></a>
\ No newline at end of file \ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment