0e1eaa91d3
json: support sax- and dom-like interfaces
2015-02-02 23:00:38 +11:00
cfc0f8ecd0
json: move tree parsing code to json::tree
2015-02-02 21:26:56 +11:00
52f53caee5
debug: drop support for CHECK_HARD
...
HARD vs SOFT assertions were never very well defined or supported.
Currently they just imply a level of functionality that isn't present;
it's better to remove them instead of expending the effort at this
point.
2015-01-28 14:49:34 +11:00
d3f098216c
json: give invalid character offset in error msg
2015-01-18 15:37:40 +11:00
b152729cb5
json: allow arrays as the root node
2015-01-18 15:37:40 +11:00
fcd40105a7
json: serialisation/instantiation from size_t
2014-09-01 16:25:24 +10:00
9cb897a381
whitespace
2014-05-20 14:11:28 +10:00
4673b91104
Use nullptr rather than NULL
2014-03-03 14:34:45 +11:00
fe7d507c28
Remove useless debug check
2014-03-03 14:34:35 +11:00
c3a268b2c3
Set number iostream precision to maximum
2013-08-05 22:39:44 +10:00
d425f1c67a
Add serialisers for float and int
2013-08-05 22:39:34 +10:00
b0c6b33f20
Add to_json for bool, nullptr, string
2013-08-05 20:54:19 +10:00
e4da68ffe7
Comment consistency
2013-08-05 20:12:04 +10:00
4f5d75a1df
Make all check macros uppercase
2012-05-11 12:34:21 +10:00
ba92eed1f5
More checks for json number parsing
2012-05-11 12:17:40 +10:00
3433e10ec1
Move the json output operator into json namespace
2012-04-26 18:20:08 +10:00
1d59bae113
Change slurp to return a unique_ptr
2012-04-26 18:18:39 +10:00
77942e008d
Change my email to an active domain
2012-04-23 13:10:50 +10:00
598f125d53
Add char* equality for json::strings
2012-04-20 18:20:19 +10:00
fd113f6c4d
Add json::object::has query for keys
2012-04-20 18:09:23 +10:00
0974400f1a
Make json constructors explicit
2012-04-20 18:08:38 +10:00
4ca3438fa1
Add implementation of is_integer for json
2012-04-20 18:06:30 +10:00
cd9762a94a
Add simple json::object accessors
2012-04-19 16:44:35 +10:00
cae41d87fb
Add json::node equality operators and specialise
2012-04-19 16:41:54 +10:00
036f0fab51
Use C++ style comments for sections
2012-04-19 16:41:10 +10:00
fe77bf9d7d
Add and use type_error for type conversion failure
2012-04-13 11:23:13 +10:00
86b5abde08
Add json::null::as_null implementation
2012-04-13 11:15:08 +10:00
c0476c553e
Use unique_ptr for all compound node children
2012-04-12 16:09:49 +10:00
45d8cfffbf
Rename "to_<type>" functions to "as_<type>"
...
'to' implies a copy, 'as' implies reinterpret.
2012-04-12 16:08:06 +10:00
e6ad6c2db3
Use check{_hard,_soft} in preference to assert
2012-04-12 16:06:28 +10:00
040e565a18
Split json::error into parse and schema errors
2012-04-12 14:36:05 +10:00
3a37fcde35
Add convenience wrapper json::write function
2012-04-12 14:19:01 +10:00
d42fdfc771
Add indentation to json output
2012-04-12 14:09:33 +10:00
a13c1b9183
Unneeded namespace qualification for json::parse
2012-04-12 14:08:41 +10:00
134ab02ba6
Change ragel index variables to avoid signed warns
2012-04-11 15:49:11 +10:00
b302b510c3
Return unique_ptr from json routines
2012-01-04 17:05:40 +11:00
f02501eb5e
Move io functions into the util namespace
2011-10-01 01:58:10 +10:00
c3ad96f88e
Add more convenient array and object accessors
2011-09-23 13:45:09 +10:00
4c96950130
Change ragel used types to avoid size warnings
2011-08-08 16:22:25 +10:00
7cba9b8496
Json now parses from slurped strings, not mmap
...
mmap was a debatable choice in the first place, and is annoying under Windows,
so we may as well remove it.
2011-07-06 19:29:37 +10:00
e42b1f6a10
Pass object::insert string by const reference
2011-06-29 21:23:23 +10:00
20f81a7630
Correct package name in copyright headers
...
Package is no longer waif, after its seperation from the waif
library/application. Hopefully there aren't any more dependencies...
2011-06-21 20:26:32 +10:00
745e06d1af
initial import from waif
2011-05-23 17:18:52 +10:00