Commit Graph

63 Commits

Author SHA1 Message Date
d9713fe8b7 json/tree: fix signed min, unsigned max constraints
signed/unsigned casting issues prevented correct comparisons with the
min/max constraints. account for the source type's range before doing the
comparison.
2016-09-20 16:02:08 +10:00
116ad04a1f build: use ostream/istream over iostream 2016-08-04 17:42:41 +10:00
f9fb0873d3 build: tidy system headers 2016-07-28 13:39:27 +10:00
f793175fdf json/schema: add 'integer' type support 2016-07-04 15:46:01 +10:00
8694b95cec json/tree: add is_integer query 2016-07-04 15:45:38 +10:00
10e0c4f923 json/except: use a human readable key_error message
the exception string was completely useless without mentioning "you
tried to dereference an invalid key".
2016-06-29 17:55:44 +10:00
74fc943f53 build: quiesce type conversion warnings 2016-06-29 17:55:12 +10:00
b1bc2a816d json/schema: add path based validate 2016-06-28 16:59:56 +10:00
73c30561af json/tree: reinstate path based parsers
json::tree::node is a fat object, so it's safe to load the source data
from within the parsing function
2016-06-28 16:57:44 +10:00
d7204d7cac json: remove path based parsers
parsers don't store copies of the data, so we can't allow functions that
allocate data themselves.
2016-06-28 15:59:53 +10:00
642317f6a4 json: use templated iterator for parsing from views 2016-06-28 14:16:28 +10:00
8142944139 json: store numbers natively as uint/sint/real
allows more accurate representations and better error checking.
2016-05-12 17:41:31 +10:00
5b58e0afa6 json/flat: don't try to parse empty files
avoids debug assertions fetching data pointer on empty mappings
2016-04-27 17:07:20 +10:00
eb1b042e06 j/except: remove useless inherited constructor 2016-04-27 16:12:45 +10:00
9bbcfa6e63 make header paths more explicit 2016-04-05 11:06:35 +10:00
ab330cc520 add ref-qualifiers to avoid dangling refs/ptrs 2016-03-17 18:05:28 +11:00
ea1dbd253a j/tree: add from_path function for clarity 2016-02-11 14:53:43 +11:00
424e6e8701 cast: move types/casts to cast 2015-11-17 16:19:27 +11:00
b1bc54ac8c maths: move remaining operations into util namespace 2015-11-16 11:44:07 +11:00
cb12d4fd1f io: remove redundant write overloads 2015-10-29 10:51:42 +11:00
3801842373 json/except: add line number to what output 2015-09-09 18:45:23 +10:00
ba4eb8cc45 json/fwd: add exception forward declarations 2015-09-09 18:45:23 +10:00
c2589abc8e j/tree: add templated type conversions 2015-09-08 14:33:39 +10:00
e6b15d2a85 j/tree: remove ambiguous string parse call
single pointer string parsing can be confused with filesystem paths.
instead prefer the two pointer range form.
2015-09-08 14:32:48 +10:00
bedd74747c json/tree: explain lack of scalar type operators 2015-08-28 21:06:45 +10:00
a28ea87d58 json/tree: dont use namespace std or util 2015-08-28 21:06:04 +10:00
daa2587240 json/tree: style 2015-08-28 20:36:21 +10:00
99ee6ed04f j/tree: add override specifiers 2015-06-30 22:24:43 +10:00
fd319d579b build: make single argument constructors explicit 2015-06-04 22:18:43 +10:00
7ae57730f0 whitespace 2015-04-13 18:06:08 +10:00
2658b41ea1 relicence under Apache-2.0 2015-04-13 18:05:28 +10:00
0318c70709 json/schema: additionalProperties, patternProperties 2015-03-23 18:44:16 +11:00
90552732d7 json/schema: validate now throws on error 2015-03-23 18:44:16 +11:00
d102410567 json/tree: add as_bool native accessor 2015-03-23 18:41:07 +11:00
7c4604d0c7 json/schema: check before using exclusiveMin/Max 2015-03-19 00:25:50 +11:00
5674f2a2e9 json: add basic json-schema draft 4 support 2015-03-19 00:25:50 +11:00
f73b39f063 json/tree: add std::string/string equality ops 2015-03-19 00:25:50 +11:00
1d0240ba10 json/tree: move some array methods to cpp 2015-03-19 00:25:50 +11:00
f333c75218 json/object: add find method 2015-03-19 00:25:50 +11:00
9230de8c98 json/tree: add const begin/end 2015-03-19 00:25:50 +11:00
1877767614 style 2015-03-19 00:25:50 +11:00
2592cd0442 json/tree: add mutable indexing operators 2015-03-19 00:25:50 +11:00
a2535e2006 json/tree: add mutable conversion queries 2015-03-19 00:25:50 +11:00
6e81437b93 json/tree: add as_chars accessor 2015-03-19 00:25:50 +11:00
b01635141f json/tree: add type enum and value queries 2015-03-19 00:25:50 +11:00
5e20ee3a1d json/fwd: add forward declaration header 2015-03-19 00:25:50 +11:00
5fd11fbe53 json/tree: make value classes final 2015-03-18 15:45:33 +11:00
4f0f040f7d json/tree: add clone method 2015-03-18 15:44:46 +11:00
47cc2adfab json: add key_error exception class 2015-03-18 15:42:03 +11:00
0db3188a49 j/tree: add as_{uint,float,double} 2015-02-16 23:38:08 +11:00