Petri Lehtinen
adb1b58627
C++: Add Value::dump_file(), load_file() and loads() that take an std::string
2010-02-04 21:08:42 +02:00
Petri Lehtinen
b8059a1880
C++: Rename some functions to better match the C API
...
Value::save_file -> Value::dump_file
Value::save_string -> Value::dumps
load_string -> loads
2010-02-04 21:08:38 +02:00
Petri Lehtinen
49d40f020b
C++: #include <cstdio> in jansson.hpp
...
This is to avoid standard C functions ending up in namespace json, as
jansson.h is #included in there, and jansson.h in turn #includes
stdio.h.
2010-02-04 20:50:02 +02:00
Petri Lehtinen
c9fc055351
Add myself as another copyright holder for jansson.hpp and jansson.ipp
2010-02-02 21:14:50 +02:00
Petri Lehtinen
d1a0c3ffc2
C++: Rename jansson-impl.hpp to jansson.ipp
...
The .ipp suffix is for inlined template implementation code.
While at it, use #ifdef and #ifndef instead of #if defined().
2010-02-02 21:10:58 +02:00
Petri Lehtinen
b07e69c37a
C++: Rename namespace json::_private to json::detail
2010-02-02 21:01:50 +02:00
Petri Lehtinen
2b43e7dbda
C++: Untabify, reindent, delete trailing whitespace
2010-02-02 21:00:10 +02:00
Petri Lehtinen
b495b96547
Add functions json_object_iter_{at,set,set_new}
2010-02-01 21:07:19 +02:00
Petri Lehtinen
3dd29366b8
Merge branch 'c++-api'
2010-01-21 22:29:26 +02:00
Petri Lehtinen
8c2ca3fae6
jansson 1.2
2010-01-21 21:49:10 +02:00
Sean Middleditch
38950b081c
add meaningful copyright to jansson-impl.hpp too
2010-01-18 21:55:41 -08:00
Sean Middleditch
56687e9b56
add meaningful copyright to jansson.hpp
2010-01-18 21:55:25 -08:00
Sean Middleditch
c9b33e3386
integrate jansson.hpp into build and test suite
2010-01-18 21:36:02 -08:00
Sean Middleditch
2ad4634de5
Merge branch 'master' of /home/elanthis/Source/janssonxx
...
Conflicts:
.gitignore
2010-01-18 21:26:10 -08:00
Petri Lehtinen
93ac06c902
Fix memory leaks in json_*_deep_copy()
2010-01-10 21:01:07 +02:00
Petri Lehtinen
508873de9b
Use _nocheck functions internally for speed
...
There are some places where we copy a string from an existing JSON
value. In these cases the string has already been checked for valid
UTF-8.
2010-01-10 14:39:11 +02:00
Petri Lehtinen
9db34dc31a
Add functions for shallow and deep copying JSON values
2009-12-31 18:50:39 +02:00
Petri Lehtinen
95a468cebb
Add equality test for JSON values
2009-12-31 18:50:36 +02:00
Petri Lehtinen
dd2fe1ebe8
Add _nocheck functions
...
Added functions are:
* json_string_nocheck()
* json_string_set_nocheck()
* json_object_set_nocheck()
* json_object_set_new_nocheck()
These functions don't check that their string argument is valid UTF-8,
but assume that the user has already performed the check.
2009-12-23 22:28:24 +02:00
Petri Lehtinen
6637b976ed
Merge branch '1.1'
2009-12-21 14:13:05 +02:00
Petri Lehtinen
f5202bedef
Remove const qualifier from the json_t parameter in json_*_set() functions.
...
It's incorrect as these functions modify the value.
2009-12-21 14:12:06 +02:00
Petri Lehtinen
e7a5dc58e6
Merge branch '1.1'
...
Conflicts:
configure.ac
doc/conf.py
2009-12-21 12:52:25 +02:00
Petri Lehtinen
34fb97998c
jansson 1.1.3
2009-12-18 21:43:12 +02:00
Petri Lehtinen
ec96cbf016
Encode reals correctly
...
This patch changes the sprintf format from "%0.17f" to "%.17g", as the
f format specifier doesn't print the exponent at all. This caused
losing precision in all but the most simple cases.
Because the g specifier doesn't print the decimal fraction or exponent
if they're not needed, a ".0" has to be appended by hand in these
cases. Otherwise the value's type changes from real to integer when
decoding again.
Thanks to Philip Grandinetti for reporting this issue.
2009-12-18 00:05:06 +02:00
Petri Lehtinen
19a606d736
Implement JSON_SORT_KEYS encoding flag
...
With this flag, the objects are sorted by key when encoding.
2009-12-16 23:12:39 +02:00
Petri Lehtinen
50031440a3
Implement JSON_ENSURE_ASCII encoding flag
...
With this flag, all Unicode characters outside the ASCII range are
escaped.
2009-12-05 22:55:30 +02:00
Petri Lehtinen
d67aeb9739
Use int32_t instead of plain int with Unicode code points
...
On some architectures, int just isn't big enough to hold all Unicode
code points.
2009-12-02 23:53:54 +02:00
Petri Lehtinen
7c707a73a2
Only export symbols starting with "json_" in libjansson.la
...
This way we don't pollute the symbol namespace with internal symbols.
2009-11-29 13:04:12 +02:00
Petri Lehtinen
330e892ff6
Make parse_json static
2009-11-29 13:00:47 +02:00
Petri Lehtinen
e0a88d19d1
Merge branch '1.1'
...
Conflicts:
configure.ac
doc/conf.py
2009-11-08 22:01:02 +02:00
Petri Lehtinen
842bc2128b
jansson 1.1.2
2009-11-08 14:13:32 +02:00
Petri Lehtinen
ca6d26a1c2
Don't include stdint.h in jansson.h
...
It's not needed
2009-11-07 14:45:46 +02:00
Petri Lehtinen
17d913307e
Merge branch '1.1'
...
Conflicts:
test/.gitignore
test/testprogs/Makefile.am
2009-11-04 22:10:46 +02:00
Petri Lehtinen
f236c14dc5
dump: Revise whitespace usage
...
- Never append newline to output
- By default, add spaces between array and object items for more
readable output
- Introduce the flag JSON_COMPACT to not add the aforementioned spaces
2009-11-04 22:09:40 +02:00
Petri Lehtinen
d3959a8ce7
load: Parse a badly put - sign correctly
...
Thanks to Manolis Delakis for reporting.
2009-10-29 15:45:16 +02:00
Petri Lehtinen
f243930b68
json_load_file: Initialize the error struct properly
...
Failing to do this has the effect that the error message is not
returned when the input file cannot be opened (e.g. if it doesn't
exist).
Thanks to Martin Vopatek for reporting.
2009-10-27 17:56:02 +02:00
Petri Lehtinen
325101e525
jansson 1.1
2009-10-20 21:29:16 +03:00
raoulh
a83cd30c31
Add C++ guards to jansson.h
...
Signed-off-by: Petri Lehtinen <petri@digip.org >
2009-10-19 12:22:21 +03:00
Petri Lehtinen
86dc1d629b
Fix indentation
...
No functional changes.
2009-10-16 21:20:38 +03:00
Petri Lehtinen
4cd777712b
Enhance handling of circular references
...
It's now an error to try to add an object or array to itself. The
encoder checks for circular references and fails with an error status
if one is detected.
2009-10-15 21:02:27 +03:00
Petri Lehtinen
79009e62c1
json_dumps: Close the strbuffer if dumping fails
2009-10-15 20:54:32 +03:00
Petri Lehtinen
951d091f07
Make integer, real and string mutable
...
Added functions:
json_string_set
json_integer_set
json_real_set
While at it, clarify the documentation and parameter naming of
json_{string,integer,real}_value() a bit.
2009-10-14 08:23:02 +03:00
Petri Lehtinen
185e107d24
Don't use non-portable asprintf()
...
Thanks to Adam Strzelecki for reporting.
2009-10-13 15:40:26 +03:00
Petri Lehtinen
ca7703fbd1
Merge branch '1.0'
...
Conflicts:
configure.ac
doc/conf.py
2009-10-11 21:51:54 +03:00
Petri Lehtinen
12cd4e8c09
jansson 1.0.4
2009-10-11 21:38:42 +03:00
Petri Lehtinen
1e00cd58a5
Extend object API
...
Added functions:
json_object_size
json_object_clear
json_object_update
2009-10-11 20:44:01 +03:00
Petri Lehtinen
9d648a87cb
Check json_object_set_new arguments
...
A segfault was caused by NULL key.
2009-10-10 22:53:36 +03:00
Petri Lehtinen
19588c2d69
Fix a few more compilation issues
...
These were left out from the previous commit.
2009-10-06 13:22:27 +03:00
Petri Lehtinen
9c5a8430db
Make it compile on platforms where char is unsigned
...
Linux on powerpc seems to be one such platform.
2009-10-01 21:54:45 +03:00
Petri Lehtinen
cbacac5975
Extend array API
...
Added functions:
json_array_insert
json_array_insert_new
json_array_remove
json_array_clear
json_array_extend
2009-09-29 22:17:58 +03:00