Niels
397ada22d3
implemented remove
2016-04-20 16:52:00 +02:00
Niels
fa03cf0c63
replace and copy
2016-04-20 15:41:33 +02:00
Niels
70fc5835cb
started implementing JSON Patch (RFC 6902)
2016-04-18 22:41:36 +02:00
Niels
1dee40a969
fixed test case
2016-04-17 22:34:39 +02:00
Niels
6268287940
improved documentation and test coverage
2016-04-17 22:08:21 +02:00
Niels
7034ae2486
improved test coverage
2016-04-17 19:12:12 +02:00
Niels
0835eb293f
improved RFC compliance and code coverage
2016-04-17 18:54:54 +02:00
Niels
40e899a819
cleanup and documentation
2016-04-17 17:39:35 +02:00
Niels
f834965b44
implemented deflatten function
2016-04-16 20:45:40 +02:00
Niels
007359675b
added a flatten function
2016-04-16 16:39:20 +02:00
Niels
3401954f5b
cleaned up API
2016-04-16 14:02:14 +02:00
Niels
3a3e064287
Merge branch 'develop' into feature/json-pointer
2016-04-16 12:19:31 +02:00
Niels
76a5a776eb
cleanup after #234
2016-04-16 12:19:10 +02:00
Niels
94af8abdff
overworked reference token parsing
2016-04-13 23:23:54 +02:00
Niels
2cb925c186
adding support for escaped reference tokens
2016-04-13 17:41:19 +02:00
Robert Marki
2197f5f0a6
Make the indirection and dereference operators of iterator const
...
fixes #233
2016-04-13 13:49:53 +02:00
Niels
726051e9b7
very first draft of a JSON pointer API
2016-04-11 23:17:03 +02:00
Niels
a744c62696
made tests independent of "C" locale
2016-04-05 22:28:27 +02:00
Niels
31bccc83b9
fixed locale problems
2016-04-05 21:55:51 +02:00
Niels
9c233be567
merged #201
2016-04-03 14:08:38 +02:00
Niels
2f63e5fb45
added copyright information to files to make release more self-contained
2016-03-25 17:41:36 +01:00
Niels
f965c4c35b
improved code coverage
2016-02-14 22:56:51 +01:00
Niels
3a92559fa9
cleanup
2016-02-14 22:24:45 +01:00
Niels
7f4736b546
added serialization to fuzz testing
2016-02-14 21:36:56 +01:00
Niels
a3eecdc383
updated Catch to v1.3.4
2016-02-14 21:36:43 +01:00
Niels
153e105164
cleanup after #207
2016-02-14 18:38:29 +01:00
Michael Macnair
9e500b49ac
Add support for afl-fuzz testing
...
"make fuzz" creates a simple executable that de-serialises stdin
and re-serialises to stdout.
"make fuzz_testcases" extracts the smaller json test cases into
a testcases directory.
The library can then be fuzzed as follows:
CC=afl-clang-fast make fuzz
make fuzz_testcases
mkdir out
afl-fuzz -i testcases -o out ./fuzz
2016-02-12 09:35:08 +00:00
Niels
8b1a777d36
reverted change wrt. Erasable concept
2016-02-05 22:37:28 +01:00
Niels
2ff2e10660
checking Erasable concept
2016-02-05 22:30:37 +01:00
Niels
2c720b26ab
added a constructor from an input stream
2016-02-05 19:24:42 +01:00
Niels
104c4b5286
improve code coverage
2016-01-31 15:04:38 +01:00
Niels
22127a4b85
moved documentation to index markdown file
2016-01-30 22:05:01 +01:00
Trevor Welsby
561accb068
Fixed issue #199
2016-01-30 12:41:12 +10:00
Niels
707732a53e
clean up after #193
2016-01-26 19:50:49 +01:00
Niels
e46cc6327f
Merge pull request #193 from twelsby/issue178
...
Issue #178 - Extending support to full uint64_t/int64_t range and unsigned type (updated)
2016-01-26 19:40:16 +01:00
Trevor Welsby
a4a88b1b7d
Issue #195 - update Travis to Trusty due to gcc/clang strtod() bug
2016-01-26 08:36:18 +10:00
Trevor Welsby
281492c581
Merge upstream commits and resolve conflicts
2016-01-25 02:42:20 +10:00
Niels
54a4139157
cleanup after #191
2016-01-24 17:33:46 +01:00
Trevor Welsby
4620960b72
Disable problematic test for GCC/clang, remove debug dump from unit.cpp
2016-01-25 02:22:46 +10:00
Trevor Welsby
19918b948d
Fix typo in preprocessor defined/!defined
2016-01-25 02:07:49 +10:00
Trevor Welsby
421affd06e
Merge upstream commits and resolve conflicts
2016-01-25 02:01:01 +10:00
Trevor Welsby
4d6985d4e2
Disable problematic test for GCC/clang, remove debug dump from unit.cpp
2016-01-25 01:53:32 +10:00
Trevor Welsby
d7ef2ccffd
Issue #178 - fully support int64_t/uint64_t numbers, add unsigned type
2016-01-25 01:04:37 +10:00
Niels
8a0490a011
cleanup
2016-01-24 13:04:55 +01:00
Niels
e00b00fea8
Merge pull request #190 from twelsby/issue185
...
fixed #185 - remove approx() and use #pragma to kill warnings
2016-01-24 12:55:40 +01:00
Niels
600ad330c5
cleanup after PR #189
2016-01-24 11:00:54 +01:00
Trevor Welsby
f79d52b973
DEBUG ONLY: DUMP INFO FROM TRAVIS
2016-01-24 19:15:30 +10:00
Trevor Welsby
a1c6f16bd3
Fix Issue #186 - add overload wrappers for strto(f|d|ld)
2016-01-24 17:00:11 +10:00
Trevor Welsby
3a1403409f
Issue #185 - remove approx() and use #pragma to kill warnings
2016-01-23 17:45:30 +10:00
Trevor Welsby
bd0f3001c6
Fix typo in new unit.hpp comments
2016-01-23 17:31:58 +10:00
Trevor Welsby
7e3245786c
Fixed issue #171 - added extra operator[] template overloads
2016-01-23 17:03:45 +10:00
Niels
a04bd4f851
cleanup after #184
2016-01-20 21:14:58 +01:00
dariomt
e1645a09e9
Merge branch 'master' of https://github.com/nlohmann/json
2016-01-18 10:08:58 +01:00
Niels
7371c71d2a
using CHECK_THROWS_WITH to check exceptions ( #160 )
2015-12-27 15:30:30 +01:00
Niels
d6b8830e03
more work on exceptions ( #160 )
2015-12-26 13:17:32 +01:00
Niels
dc8ab92552
more tests for exceptions ( #160 )
2015-12-25 13:04:40 +01:00
Niels
76e5e29eda
overworked exceptions and tests ( #160 )
2015-12-25 11:46:18 +01:00
Niels
70493a10d1
iterator_wrapper for const objects ( #83 )
2015-12-23 08:21:29 +01:00
Niels
00f9296db5
some cleanup for #83
2015-12-22 18:07:51 +01:00
Niels
67c2d90a21
working on #160
2015-12-22 13:27:40 +01:00
Niels
4351698c83
re-adding const version operator[] ( #135 , #159 )
...
It was a good idea to implement a const version of operator[] it in the
first place. I was a pity that this implementation was flawed. It was a
mistake to remove the const version completely. This commit
re-introduces the const version. My apologies for all the inconvenience.
2015-12-21 08:42:42 +01:00
Niels
9def0186be
upgraded Catch to v1.3.1
2015-12-20 15:42:01 +01:00
Niels
457bfc2401
work on #144
2015-12-20 15:30:07 +01:00
Niels
cd04a7d3e9
fix for #133
...
added value() function to get object value at given key or a default
value if key does not exist
2015-12-15 08:38:54 +01:00
Niels
258f04c561
fixed #154 (no more warnings for incomplete switches)
2015-12-14 16:32:37 +01:00
Niels
a70a7a8001
fixed #135 : operator[] now only works on nonconst JSON objects
2015-12-13 11:26:55 +01:00
Niels
9da8770f3a
ignore UTF-8 byte order mark ( fixes #152 )
2015-12-07 22:27:53 +01:00
Robert Marki
ec7a1d8347
Fix character skipping after a surrogate pair
...
In a string the first character following a surrogate pair is skipped by the
lexer, but the rest of the string is parsed as usual.
2015-11-13 13:13:46 +01:00
Niels
746c1a7142
cleanup
2015-10-17 12:51:59 +02:00
dariomt
4b8a822f33
Merge branch 'get_ref'
2015-10-16 16:42:03 +02:00
dariomt
04cc7d5a05
doh! disable test correctly only for MSVC
2015-10-16 16:36:34 +02:00
dariomt
bd2783f45c
Added get_ref()
...
Same as get_ptr() but for references.
If the type is incompatible it throws (get_ptr() returns null).
Implemented in terms of get_ptr().
2015-10-16 15:23:57 +02:00
dariomt
9d45aafc2c
disabled "CopyAssignable" test for MSVC in Debug mode, see #125
...
STL iterators used by json::iterator don't pass this test in Debug mode.
The test does pass in Release mode, so I felt the best thing to do was selectively disable that test.
2015-10-07 18:31:08 +02:00
Niels
b58a93b8dd
merged #111
2015-08-14 14:45:13 +02:00
Niels
fadccc34eb
fixed iterator_wrapper
2015-08-13 10:08:55 +02:00
Niels
66ec58639b
removed failing tests
2015-08-06 23:02:52 +02:00
Niels
b0eb34394c
added test cases for #83
2015-08-06 22:36:08 +02:00
Niels
c910853304
fixed build
2015-08-02 21:49:42 +02:00
Niels
b00e627c30
fixed build
2015-08-02 21:47:11 +02:00
Niels
9355dce063
fixed build
2015-08-02 21:40:25 +02:00
Niels
e64dc532ab
fixed build
2015-08-02 21:35:07 +02:00
Niels
b5a05e1121
add a test for the iterator_wrapper
2015-08-02 21:27:02 +02:00
Niels
359cf7993f
closed #75
...
minor changes, but the core idea remains the same
2015-07-26 18:41:58 +02:00
Niels
5993ff9976
updated catch
2015-07-26 10:41:38 +02:00
Niels
5084159048
added changes from #105 : MSVC fixes
...
- additionally, switch off optimization flags to maybe allow build to
complete on AppVeyor
2015-07-16 18:45:19 +02:00
Niels
1c8d5dc211
added another insert function
2015-07-12 22:47:08 +02:00
Niels
092bf39f53
added test case
2015-07-12 20:40:46 +02:00
Niels
186aefb8f2
added first insert functions
2015-07-12 18:28:23 +02:00
Niels
b2efd50a03
more documentation
2015-07-12 17:08:51 +02:00
Niels
19d550c044
new implementation for (const_)reverse_iterator to cope with issue #93
2015-07-07 23:31:43 +02:00
Niels
12d174d424
fixed #100
2015-07-06 23:21:54 +02:00
Niels
2bc5d893c8
refactored generic iterator into a new class primitive_iterator_t
2015-07-05 22:22:15 +02:00
Niels
82a6995306
fixed #101
2015-07-01 23:08:54 +02:00
Niels
abd741708d
more tests
2015-06-30 00:12:18 +02:00
Niels
3f6b10733b
addressed static analysis warnings #94
2015-06-28 14:02:47 +02:00
Niels
c58c5aa8c9
fixed #97
...
- added functions is_structured() and is_primitive()
- updated documentation
- updated test cases
2015-06-27 18:43:11 +02:00
Niels
3ffedea5c4
minor changes
2015-06-25 00:40:16 +02:00
Niels
6e6dd5f45d
added test cases for the last uncovered lines
2015-06-24 15:46:50 +02:00
Niels
40312fb07b
worked on #91
...
- implemented `get_ptr` function to return pointer to value member
- overworked `get` function to support pointer types
- added test cases
- added documentation (see
http://nlohmann.github.io/json/classnlohmann_1_1basic__json.html ) with
examples
2015-06-24 15:16:32 +02:00
Niels
457572184c
more documentation
...
In this commit, also the semantics for values skipped via the parser
callback has changed. Now, the top-level value is returned as “null”
instead of “discarded”.
2015-06-24 12:15:51 +02:00
Niels
bd8150c58e
updated Catch
2015-06-20 15:47:26 +02:00
Niels
64c467e940
fix warnings possible loss of data (from #88 )
2015-06-20 14:15:15 +02:00
Niels
51edad3962
fixed #89 without breaking #71
2015-06-15 19:45:25 +02:00
Niels
8e9a711996
closes #90
2015-06-15 16:37:49 +02:00
Niels
1375162562
exclude Unicode tests from Valgrind to avoid timeout
2015-06-15 05:46:12 +02:00
Niels
2e9a13bd88
added extensive Unicode tests
2015-06-14 23:17:49 +02:00
Niels
6fb829062c
some maintenance
...
- unified used exception types
- removed any camel case names
2015-06-14 19:35:20 +02:00
Niels
bc55e496de
test suite is not portable :-(
2015-06-13 13:01:10 +02:00
Niels
bd0cb65b7a
fixed more float parsing cases
2015-06-13 12:42:18 +02:00
Niels
29512ae989
added test case for #82
2015-06-04 20:07:33 +02:00
Niels
9dbb4402fb
improved performance for dump()
2015-06-03 23:34:10 +02:00
Niels
e2035df957
added unit test for issue #76
2015-05-30 16:47:21 +02:00
Niels
5ed80d308d
some parsing performance improvements
2015-05-09 22:49:21 +02:00
Niels
abb8653115
more test cases
2015-05-09 16:58:06 +02:00
Niels
03634cacbc
cleanup
2015-05-09 15:38:58 +02:00
Niels
9cdd278f45
overworked code for pull request #71
2015-05-09 15:29:20 +02:00
Niels
2b4e461702
fixed string definition
2015-05-09 15:09:52 +02:00
Niels
1f381d496d
overworked coverage
2015-05-09 14:54:33 +02:00
Niels
bb142d6cae
added test cases
2015-05-09 14:37:22 +02:00
Niels
869035a6c9
added compliance test cases
2015-05-09 13:56:51 +02:00
Niels
9f9d293bad
valgrind still makes problems
2015-05-06 21:32:41 +02:00
Niels
bef256600c
added test cases
2015-05-06 20:46:04 +02:00
Niels
2cfc93fc76
overflows are handled wrong by Valgrind
2015-05-06 20:21:06 +02:00
Niels
17609f244d
fixed #70
2015-05-06 19:52:12 +02:00
Niels
2b825760b5
removed failing test case
2015-05-03 21:37:14 +02:00
Niels
07dd3af848
another try
2015-05-03 21:28:57 +02:00
Niels
370929ac08
overworked test case
2015-05-03 21:10:22 +02:00
Niels
c458bf18e6
more test cases
2015-05-03 20:59:11 +02:00
Niels
106705ed73
more tests
2015-05-03 20:42:24 +02:00
Niels
10bbb77491
test case for filter function
2015-05-03 20:18:16 +02:00
Niels
1143094e4c
testing the callback function
2015-05-03 20:07:31 +02:00
Niels
093b97efc4
more tests
2015-05-03 19:55:45 +02:00
Niels
f66e603686
more test cases
2015-05-03 18:59:58 +02:00
Niels
ab1ff9de53
added more test cases
2015-05-03 18:27:43 +02:00
Niels
84561d8866
improved test case coverage
2015-05-03 18:19:12 +02:00
Niels
fc58a73523
fix #60 (double escaping)
2015-04-24 22:06:57 +02:00
Daniel Kopecek
ad6ad4ae1e
Fix compilation of json_unit with GCC 5
...
Addressing:
```
+ make json_unit
g++ -std=c++11 -Wall -Wextra -pedantic -Weffc++ -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat=2 -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wold-style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-conversion -Wsign-promo -Wstrict-overflow=5 -Wswitch -Wundef -Wno-unused -Wnon-virtual-dtor -Wreorder -Wdeprecated -Wfloat-equal -I src -I test -Dprivate=public test/unit.cpp -o json_unit
In file included from test/catch.hpp:65:0,
from test/unit.cpp:11:
/usr/include/c++/5.0.0/sstream:300:7: error: 'struct std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::__xfer_bufptrs' redeclared with different access
struct __xfer_bufptrs
```
2015-04-14 16:02:49 +02:00
Niels
4c55ada0f7
another test case
2015-04-12 18:33:38 +02:00
Niels
6ddb115072
more coverage
2015-04-12 18:12:29 +02:00
Niels
f03c6ce458
added missing test cases
2015-04-12 16:57:51 +02:00
Niels
139ef0e750
implemented front() and back()
2015-04-12 14:14:00 +02:00
Niels
ade49f8b2a
constructor for an integer range
2015-04-12 13:15:26 +02:00
Niels
b801adca76
started to implement sequence container
2015-04-12 12:02:30 +02:00
Niels
a3210ee2a9
increase test coverage
2015-04-11 15:42:54 +02:00
Niels
6dceab583c
implemented issue #57 : erase with iterators
2015-04-11 15:30:19 +02:00
Niels
84195daf28
added erase function for arrays
2015-04-09 18:55:57 +02:00
Niels
9ea3dd9b60
another test case
2015-04-08 23:16:35 +02:00
Niels
9e8e11339d
improved test case coverage
2015-04-08 22:58:35 +02:00
Niels
1bdb6acb1f
overworked type conversion
2015-04-08 22:23:40 +02:00
Niels
5e89cb0acb
implemented key()/value() for reverse iterators
2015-03-26 17:06:33 +01:00
Niels
47ea1c10d4
key/value function for iterators ( #46 )
...
Currently only support iterator and const_iterator. reverse_iterator
and const_reverse_iterator to be implemented soon.
2015-03-24 19:08:03 +01:00
Niels
6fc52f3302
fixed #47 (added erase function to remove key form object)
2015-03-24 16:50:55 +01:00
Niels
a382a93a8e
Merge pull request #38 from wtsi-hgi/feature/small-float-serialization
...
Feature/small float serialization
2015-03-23 20:15:50 +01:00
Niels
f2957dc3bf
fixed #45 (added count function for keys in objects)
2015-03-22 19:07:43 +01:00
Joshua C. Randall
ef3ad895ae
Adds (failing) test for small float serialisation
2015-02-28 15:53:48 +00:00
Niels
63c70fa07e
minor changes
2015-02-24 23:19:19 +01:00
Niels
d524e23204
overworked iterators
2015-02-22 17:52:27 +01:00
Niels
bc2e3a798d
a more forgiving array behavior
2015-02-21 13:24:07 +01:00
Niels
c8c49dae5d
fixed coverage
2015-02-18 22:43:25 +01:00
Niels
afd02eee44
fixed [] operator; added README
2015-02-18 22:28:56 +01:00
Niels
ca981270a0
added another test case
2015-02-17 00:36:29 +01:00
Niels
9e7941b6ba
more type adjustments
2015-02-17 00:22:12 +01:00
Niels
e2dff46d14
further type adjustments
2015-02-16 23:34:37 +01:00
Niels
5ca84052a7
removed unused code and fixed includes
2015-02-16 22:47:30 +01:00
Niels
b1be1b45ee
minor change
2015-02-15 18:43:17 +01:00
Niels
f1f72403cd
some unicode magic
2015-02-15 16:56:54 +01:00
Niels
3e885c8328
added missing test case
2015-02-15 15:51:11 +01:00
Niels
af568b9b27
test cases for new features
2015-02-15 15:45:00 +01:00
Niels
2fc82358ce
clean up
2015-02-15 13:35:51 +01:00
Niels
b21bf95620
fixed test case coverage
2015-02-15 11:53:24 +01:00
Niels
bb558d8e6f
added Unicode support
2015-02-15 11:44:49 +01:00
Niels
6ef3cb51a4
some reorganization
2015-02-14 17:34:06 +01:00
Niels
cc4a8319a1
reverse iterators
2015-02-14 16:47:14 +01:00
Niels
36e36bf84a
two more test cases for numbers
2015-02-13 20:27:27 +01:00
Niels
3391e69248
six more test cases for numbers
2015-02-13 20:16:53 +01:00
Niels
e346011876
more test cases for numbers
2015-02-13 20:02:36 +01:00
Niels
c864ea2199
systematic test case for \uxxxx sequences
2015-02-13 18:57:28 +01:00
Niels
334b7f24ea
more systematic test cases
2015-02-13 18:18:58 +01:00
Niels
40a0773e43
more test cases
2015-02-13 17:42:14 +01:00
Niels
4361c4d03f
more test cases
2015-02-12 22:54:42 +01:00
Niels
583d20a3b1
more test cases
2015-02-11 22:42:49 +01:00
Niels
89a1b0247b
fixed a major bug in the parser
2015-02-11 17:24:14 +01:00
Niels
3f8dc632e2
test cases for iterator classes
2015-02-11 15:29:41 +01:00
Niels
53c9564c51
bug fix and test cases
2015-02-11 14:58:52 +01:00
Niels
4d23c49601
another test case
2015-02-11 13:25:04 +01:00
Niels
7b7a54aca5
fixed a bug
2015-02-11 13:15:22 +01:00
Niels
032bcf6493
more test cases (unexpected ends)
2015-02-11 12:53:47 +01:00
Niels
1d177f82bd
more test cases (0e1)
2015-02-11 12:36:30 +01:00
Niels
cb96e30f25
try to understand re2c
2015-02-11 12:21:46 +01:00
Niels
c1bf002522
more test cases (objects, floats)
2015-02-11 11:57:36 +01:00
Niels
3f46fe7a08
more test cases
2015-02-11 11:47:00 +01:00
Niels
f1bd206994
number test cases
2015-02-11 11:36:45 +01:00
Niels
463c38df60
fix test case
2015-02-11 10:57:17 +01:00
Niels
4b9bd96ab1
re-added old (failing) test cases
2015-02-11 10:27:41 +01:00
Niels
c816fd12a0
cleanup
2015-02-11 10:16:43 +01:00
Niels
5d280143b7
fixes
2015-02-11 09:41:23 +01:00
Niels
8a4e127a57
+ moved lexer to class
2015-02-11 09:10:28 +01:00
Niels
e845cd1db8
still errors...
2015-02-10 23:55:44 +01:00
Niels
a201bc981d
more test cases
2015-02-10 23:45:18 +01:00
Niels
f6f7fcc88c
another test case
2015-02-10 23:28:25 +01:00