Commit graph

598 commits

Author SHA1 Message Date
Niels Lohmann a186106bde
🔨 user-defined exception 302
Also moved all exception classes into the detail namespace and
introduced them via “using” into basic_json.
2017-03-06 19:34:44 +01:00
Niels Lohmann 38c2e20ce8
added user-defined exceptions 404-405 2017-03-05 23:25:22 +01:00
Niels Lohmann 30331fa21f
🔨 added user-defined exception 403 2017-03-05 23:16:17 +01:00
Niels Lohmann 60da36aee2
🔨 added user-defined exceptions 401-402 2017-03-05 22:56:39 +01:00
Niels Lohmann 491c9780a7
🔨 added user-defined exception 311 2017-03-05 22:39:21 +01:00
Niels Lohmann 6751d650be
🔨 added user-defined exception 311 2017-03-05 22:31:08 +01:00
Niels Lohmann 9e560ca40c
🔨 added user-defined exceptions 313-315 2017-03-05 19:58:26 +01:00
Niels Lohmann 144cf6a4c7
🔨 added user-defined exceptions 310 2017-03-05 19:48:11 +01:00
Niels Lohmann 5cca44c161
🔨 added user-defined exceptions 309 2017-03-05 19:42:05 +01:00
Niels Lohmann 70b2c3f45e
🔨 added user-defined exceptions 308 2017-03-05 19:35:24 +01:00
Niels Lohmann 2a9393af00
🔨 added user-defined exceptions 307 2017-03-05 19:26:44 +01:00
Niels Lohmann bb740c43fb
🔨 added user-defined exceptions 306 2017-03-05 19:15:56 +01:00
Niels Lohmann aa842b4a27
🔨 added user-defined exceptions 305 2017-03-05 19:08:12 +01:00
Niels Lohmann f473f74fb0
🔨 added user-defined exceptions 303-304 2017-03-05 18:56:35 +01:00
Niels Lohmann 068c7acda9
🔨 added user-defined exceptions 301 2017-03-05 18:40:09 +01:00
Niels Lohmann 0c40c8e3be
🔨 added user-defined exceptions 2xx 2017-03-03 14:34:57 +01:00
Niels Lohmann a4274d7766
🔨 added user-defined exceptions 205-206 2017-03-03 14:00:42 +01:00
Niels Lohmann 875b2da95d
🔨 added user-defined exceptions 203-204 2017-03-03 13:38:14 +01:00
Niels Lohmann 9381f6c4da
🔨 added user-defined exceptions 201-202
Started implementing exceptions for invalid iterators.
2017-03-03 13:19:45 +01:00
Niels Lohmann 0c6b1f8a24
Merge branch 'develop' into feature/exceptions_3.0.0 2017-03-03 12:54:45 +01:00
Niels Lohmann 776758d7a2
🔨 added user-defined exception 109
This exception occurs when a JSON pointer contains an array index that
can not be converted into a number.
2017-03-03 12:54:37 +01:00
Niels Lohmann b86d2148ef
🔨 added user-defined exceptions 106-108
These exceptions occur when JSON pointers are malformed.
2017-03-03 11:56:58 +01:00
Niels Lohmann 01d3a006b1
⬆️ updated Catch to v1.8.1 2017-03-02 18:13:19 +01:00
Niels Lohmann 06815d274e
🔨 added user-defined exceptions 104 and 105
These exceptions are thrown in case of parse errors in JSON patch
documents.
2017-03-02 17:55:13 +01:00
Niels Lohmann c085e3bac2
🔨 started with user-defined exceptions #301 #244
Added class hierarchy for user-defined exceptions (#244). Integrated
parse exceptions 101-103. Parse exceptions include the byte count of
the last read character to locate the position of the error (#301).
2017-03-01 21:28:44 +01:00
Niels Lohmann 7b8fd864e2
🔥 removed deprecated constructor #480
The constructor basic_json(std::istream&, const parser_callback_t) has
been deprecated since version 2.0.0. This commit removes it together
with its code example, deprecation macro, and test cases. The code now
also compiles with -W-deprecated-declarations.
2017-03-01 17:49:03 +01:00
Niels Lohmann d69242c6ba
💄 cleanup
- Added comments for the serializer class.
- Added test case for resizing of the indentation string.
- Using std::none_of to check if “.0” needs to be added to
floating-point number.
2017-02-28 19:20:50 +01:00
Niels Lohmann 224f99070b
micro-optimization of dump()
A lot of small changes to avoid memory allocations:

- The locale is only queried once rather than with every number
serialization.
- The indentation string is recycled between different calls.
- The string escape function avoids a copy if no escaping is necessary.
- The string escape and the space function use a complete switch case
instead of cascaded ifs.

Cachegrind measures some 15% performance improvement.
2017-02-28 16:28:22 +01:00
Niels Lohmann 54ef5f7b47
🔨 moved serialization functions to serializer class
The class is currently just a wrapper for an std::ostream and collects
all functions related to serialization. The next step should be
recycling of variables to avoid repetitive initialization for each
recursive dump call.
2017-02-27 21:22:39 +01:00
Niels Lohmann bf4d744d1a
more tests for meta() call 2017-02-26 14:34:58 +01:00
Niels Lohmann d1b30250d6
added missing tests 2017-02-26 11:50:52 +01:00
Niels Lohmann 27c65b860b
🔖 version 2.1.1 2017-02-25 16:34:38 +01:00
Niels Lohmann a646c9c599
🔀 merge branch 'cotire' of https://github.com/tusharpm/json into tusharpm-cotire 2017-02-22 19:45:10 +01:00
Niels Lohmann 8cec55a271
🚧 fixed more warnings 2017-02-22 18:14:29 +01:00
Niels Lohmann 7d14f167b8
🚑 fix for #465 2017-02-20 22:48:27 +01:00
Niels Lohmann 1a6d7f5bca
🚧 try to fix some warnings in MSVC 2017-02-20 18:32:11 +01:00
Niels Lohmann 83f1d2c81b
added start index for from_cbor and from_msgpack (#462) 2017-02-19 21:17:05 +01:00
Niels Lohmann 4151f2d297
added test with thousands_sep 2017-02-19 20:08:01 +01:00
Tushar Maheshwari 85ce4d7b53 cmake compile time reduce using cotire
- Add prefix header
  - Include catch.hpp
  - Include json.hpp
    - Replace private with public for all json_unit files
- Move `unit.cpp` to an object library
- cotire issue: strip whitespace from CMAKE_INCLUDE_SYSTEM_FLAG_CXX
2017-02-19 13:35:54 +05:30
Niels Lohmann 513eb3ab5f
🚧 clean up 2017-02-18 11:00:18 +01:00
Niels Lohmann 6408402ad2
🔀 merge #378 (for #362 and #454) 2017-02-16 09:24:45 +01:00
Niels Lohmann 057b1e606b
🔀 merged #415 (fix for #414) 2017-02-16 08:50:20 +01:00
Niels Lohmann b9f3149451
🚑 fix for #452 2017-02-15 21:30:28 +01:00
Mihai STAN 6bf93b3d06 Merge remote-tracking branch 'upstream/develop' into develop 2017-02-15 15:00:25 +02:00
Niels Lohmann 22b9a301d6 Merge pull request #450 from nlohmann/TurpentineDistillery-feature/locale_independent_str_to_num
TurpentineDistillery feature/locale independent str to num
2017-02-14 07:18:35 +01:00
Niels Lohmann c95ff863bf
⬆️ updated Catch to v1.7.2 2017-02-13 18:55:11 +01:00
Niels Lohmann 265c5b5207
🔨 more work on the number parser 2017-02-13 18:51:23 +01:00
Niels Lohmann b84705d557
improved test coverage 2017-02-12 20:14:43 +01:00
Niels Lohmann c8191c8172
🔨 further cleanup 2017-02-12 18:50:17 +01:00
Niels Lohmann c2d55109c1
🔨 make lexer distinguishes number types 2017-02-11 16:54:25 +01:00