Commit Graph

121 Commits

Author SHA1 Message Date
Krzysztof Gabis
962d9f13ba Added makefile. 2012-12-02 18:16:12 +01:00
Krzysztof Gabis
b2dbaece40 Fixed issue with MSVC and unicode characters.
Functions in MSVC's ctype.h create runtime error when passed negative char value.
2012-12-02 11:15:48 +01:00
Krzysztof Gabis
457fa1100f Small code cleanup, narrower example code in tests and readme. 2012-11-24 20:59:16 +01:00
Krzysztof Gabis
5eb66d2b31 New test case.
"object_empty" should  ensure no more bugs in nget function.
2012-11-07 23:08:23 +01:00
Krzysztof Gabis
f7f11572c9 Fixed bug in nget function, added 2 functions to API, improved memory allocs.
Details:
- Fixed bug, where json_object_nget_value returned wrong values.
- json_object_get_count returns a number of object's name-value pairs.
- json_object_get_name returns a name at a specific index.
- Both functions allow iterating over every value in a object.
- Changed max capacity for JSON_Array and JSON_Object (they're not equal anymore).
- Added functions to resize object and array, which are also used after parsing to "trim" them to their real lengths.
- Added try_realloc function.
- Added SUCCESS and ERROR macros to make code more readable.
- Code cleanup.
2012-11-07 22:51:03 +01:00
Krzysztof Gabis
aaf1d45f16 Code refractoring.
Details:
- Increased STARTING_CAPACITY from 10 to 15.
- Added 2 macros: skip_char and skip_whitespaces.
- Added json_object_nget_value function, which removes neccessity to allocate new string when using dotget functions.
- Removed parson_strdup function, it was called only once and could be easilly replaced with appropriate call to parson_strndup.
- Renamed skip_string to skip_quotes, which is a more appropriate name, and made it work on a passed pointer to a string, which is much like skip_char and skip_whitespaces.
- Removed copy_and_remove_whitespaces, it was unncessary, and could be easily replaced with skip_whitepsaces macro.
- Merged parse_escaped_characters and get_string to get_processed_string, which makes more sense.
- Changed is_decimal implementation, to avoid unncessary string duplicating.
- Removed string copying in parse_number value and json_parse_string, since it was unncessary.
2012-11-04 17:45:52 +01:00
Krzysztof Gabis
202f16cc5c Additional code cleanup.
Removed redundant typedefs, renamed JSON_value_t to JSON_Value_Type and JSON_value_value to JSON_Value_Value to make names more consistent across project. Added project's name and url above license.
2012-11-03 19:52:49 +01:00
Krzysztof Gabis
ede8ea497a Merge pull request #1 from sduclos/master
Code Clean UP
2012-11-03 11:30:13 -07:00
sduclos
684096eb0f code clea up 2012-11-03 08:19:28 -04:00
Krzysztof Gabis
ee9be98974 Handling realloc, strdup and strndup errors.
Also moved void* cast in free to the parson_free macro.
2012-10-28 20:18:34 +01:00
Krzysztof Gabis
1f7049dd47 Fixed wrong conditional error and defined realloc as a macro.
Thanks to eps for pointing it out :)
2012-10-28 17:58:24 +01:00
Krzysztof Gabis
2684eeb360 Not parsing hex and octal values, refractoring, code cleanup, new tests.
Also changed parson_strndup and parson_strdup to be static.
2012-10-24 10:42:25 +02:00
Krzysztof Gabis
a3bb4c7390 Fixed error in the readme file. 2012-10-22 19:25:32 +02:00
Krzysztof Gabis
120f5a08da Defined malloc and free as macros, also small refractoring.
And changes to the readme file.
2012-10-22 19:20:02 +02:00
Krzysztof Gabis
5edab75bdc Checking malloc errors, added limits on nesting and object/array size.
Also small refractoring and one new test regarding nesting.
2012-10-19 16:24:24 +02:00
Krzysztof Gabis
e36fa2ab41 Changes in README.md 2012-10-18 21:37:03 +02:00
Krzysztof Gabis
9e64c0f031 Changed int to size_t to avoid signed/unsigned comparisons 2012-10-18 21:17:16 +02:00
Krzysztof Gabis
410807850e Fixed some compatibility issues with C++ compilers.
Added error type to json value types. Also implemented strdup and strndup, since they can be problematic and are not implemented everywhere.
2012-10-18 18:36:58 +02:00
Krzysztof Gabis
2740213c5c Renamed bool to boolean.
Naming variables bool is a poor idea, even in C.
2012-10-18 15:25:11 +02:00
Krzysztof Gabis
cad9bda1e4 Included stddef.h in parson.c 2012-10-16 22:32:24 +02:00
Krzysztof Gabis
de829803e3 Initial commit. 2012-10-16 19:56:54 +02:00