161 Commits

Author SHA1 Message Date
rexy712
a64e0e86ee Add license disclaimer to rjp++ files 2020-04-07 12:43:48 -07:00
rexy712
44b4bd8b19 Add middleman functions to prevent needing to also link rjp when linking against rjp++ 2020-04-07 12:21:59 -07:00
rexy712
662f24ef9a Add null check in member search as suggested by atlas moon 2020-04-06 17:46:41 -07:00
rexy712
040e5a5df9 Add output test cases for strings in rjp and rjp++ 2020-04-06 17:11:37 -07:00
rexy712
95b5b2cb83 Remove some uses of sprintf to improve speed a tiny bit 2020-04-06 16:55:44 -07:00
rexy712
fd09eb3b20 Make static analyzer happy 2020-04-06 15:09:49 -07:00
rexy712
7b643ff5c6 Separate rjp format flags into multiple for slightly more control over output formatting 2020-04-06 12:35:47 -07:00
rexy712
e6950db87c Disallow changing member key to empty string 2020-04-06 11:07:07 -07:00
rexy712
7395f41ccc Fix missing NULL check in rjp object key setting. Fix allowing empty key in object member addition 2020-04-06 06:43:46 -07:00
rexy712
16bb20a09f Add test cases for empty string values 2020-04-05 10:50:00 -07:00
rexy712
e708952c05 Allow empty string values. Disallow empty key strings 2020-04-05 10:47:12 -07:00
rexy712
06cfc1d0b6 Add default dispatch handling for generic case of 'const rjp::value&'. Will cause compilation error if return type is not void 2020-03-27 21:28:05 -07:00
rexy712
4bf41e8b42 Add dispatch test for rjp++ 2020-03-27 14:59:58 -07:00
rexy712
5bebbe1d33 Added rjp++ dispatcher and proxy type for get operations. Makes it easier to make generic programs around. 2020-03-27 12:40:37 -07:00
rexy712
ee0a1d48da Add rjp::cast specialization for rvalue To type. Acts as a std::move equivalent 2020-03-26 19:40:01 -07:00
rexy712
ed6e15db6e Update rjp++ libflags to work with new template layout 2020-03-26 19:22:45 -07:00
rexy712
295c27029b Rearrange some rjp++ files. Also realized that subobject return does not qualify for nrvo, so that's a problem. 2020-03-26 18:38:01 -07:00
rexy712
7121f8a26e Fix uninitialized value access 2020-03-26 18:23:11 -07:00
rexy712
ccfb2a91ec Add rjp++ tests 2020-03-26 16:20:55 -07:00
rexy712
f03495756f Turn off c++ build by default until librexy is released 2020-03-26 13:15:09 -07:00
rexy712
e82e469356 Add makefile to examples 2020-03-26 13:12:35 -07:00
rexy712
23dc0814a5 Removed comments in rjp.h. Moved API documentation to doc/api 2020-03-26 12:49:05 -07:00
r0nk
01b014f88e Null key check 2020-03-26 12:47:11 -05:00
rexy712
50137406e0 Fix incorrect comments in rjp.h 2020-03-26 09:14:42 -07:00
rexy712
79f0430d2c Fix parse example 2020-03-26 09:12:57 -07:00
rexy712
c42ee430c9 Add 2 basic examples 2020-03-26 09:09:00 -07:00
rexy712
4c94e11ff3 Decided to change rjp_set_member and related functions to default to allocation and copy since i kept getting them mixed up 2020-03-26 08:56:06 -07:00
rexy712
44fb59f602 Add ordered/unordered object conversion tests 2020-03-26 08:13:35 -07:00
rexy712
a4d1a98a0e Reworked rjp++ element/member addition 2020-03-24 16:34:07 -07:00
rexy712
86de4d2bb3 Add testing targets to cmake. Improve output test 2020-03-24 14:53:02 -07:00
rexy712
437d6f7bd0 Add additional test and make it easier to add more in the future 2020-03-23 17:34:57 -07:00
rexy712
330b3956e5 Fix small output bugs. Add ability to add member to object/array in one function call. 2020-03-23 17:28:12 -07:00
rexy712
968e74b182 Fix null pointer access in array iterator operations 2020-03-23 11:55:10 -07:00
rexy712
7177386801 Cleanup unneeded functions and includes 2020-03-23 10:58:56 -07:00
rexy712
eaa02d5ab4 Cleanup rjp++ includes 2020-03-23 10:38:39 -07:00
rexy712
caaf29842d Add callback based parsing to rjp++ 2020-03-22 19:08:26 -07:00
rexy712
32db7680d7 Cleanup and comment a bit more of the source 2020-03-22 16:07:52 -07:00
rexy712
d6213cfe1b Cleanup rjp.h 2020-03-22 14:46:57 -07:00
rexy712
f88bb0c4f2 Add callback based reading, essentially making chunked reading redundant 2020-03-22 11:14:10 -07:00
rexy712
841c179c24 Update .gitignore for new makefile 2020-03-22 11:12:32 -07:00
rexy712
52963dce22 Fix warning generated during release build 2020-03-19 18:55:58 -07:00
rexy712
6c526fc77c Update gitignore 2020-03-17 16:54:39 -07:00
rexy712
a345dbbff3 Add license disclaimer to rjp_lex files 2020-03-17 16:02:44 -07:00
rexy712
4387f9d39a Rename *_yacc_* to *_parse_* 2020-03-17 16:01:41 -07:00
rexy712
8e454b3d5a Separated lexing logic further. Added file for lexical analysis functions 2020-03-17 15:59:51 -07:00
rexy712
21e4583827 Separate tokenizing logic from loop 2020-03-16 18:28:28 -07:00
rexy712
e38245261e Remove parsing dependance on null terminator 2020-03-14 09:21:57 -07:00
rexy712
cc372b2941 Separated parsing loop and parsing logic 2020-03-13 12:29:52 -07:00
rexy712
e3d16e2112 Fix rjp_parse signature 2020-03-12 17:51:12 -07:00
rexy712
dd76bc9253 Change comment/excess comma support to runtime behavior 2020-03-11 12:55:30 -07:00