Commit Graph

82 Commits

Author SHA1 Message Date
Tristan Penman
db33cb833f Update PatternConstraint to use custom allocator for pattern string 2016-02-02 15:06:15 -08:00
Tristan Penman
2bb7ce19b2 Fix bug caused by ValidationVisitor incorrectly storing target adapter by reference 2016-02-02 15:06:15 -08:00
Tristan Penman
995fc96b0d Add constructor for custom alloc and free functions to SingularItemsConstraint 2016-02-02 15:06:15 -08:00
Tristan Penman
2ecb9c8b6b Add comments to functors in ValidationVisitor 2016-02-02 15:06:15 -08:00
Tristan Penman
579b0708ee Split ItemsConstraint into SingularItemsConstraint and LinearItemsConstraint, using CustomAllocator where necessary 2016-02-02 15:06:15 -08:00
Tristan Penman
a02048cfcf Use ValidateSubschemas functor for AllOfConstraint 2016-02-02 15:06:15 -08:00
Tristan Penman
c53268ba77 Update OneOfConstraint to use custom allocator, with better encapsulation 2016-02-02 15:06:15 -08:00
Tristan Penman
d534c49393 Update AllOfConstraint and AnyOfConstraint classes to use custom allocator 2016-02-02 15:06:15 -08:00
Tristan Penman
c54bf3ba87 Fix const-ness of == and != operators in CustomAllocator 2016-02-02 15:06:15 -08:00
Tristan Penman
40df802ba8 Add arguments for set and map constructors to compile without C++11 extensions 2016-02-02 15:06:15 -08:00
Tristan Penman
b7e33b249a Remove unwanted propagate_on_container_move_assignment declaration from CustomAllocator 2016-02-02 15:06:15 -08:00
Tristan Penman
c7f2f9b802 Refactor DependenciesConstraint to use custom allocator, hidden behind a more robust encapsulation strategy 2016-02-02 15:06:14 -08:00
Tristan Penman
76f8655d21 Allow use of custom alloc/free functions within Schema class for allocation of memory for Subschemas 2016-02-02 15:06:14 -08:00
Tristan Penman
49fa41ba23 Allow use of custom alloc/free functions within Subschema class, specifically for allocating memory for Constraints 2016-02-02 15:06:14 -08:00
Tristan Penman
99455298d8 Disable copy assignment and copy construction in Subschema class 2016-02-02 15:06:14 -08:00
Tristan Penman
b1755309d2 Refactor memory management for schemas and constraints to improve API and allow for future improvements 2016-02-02 15:06:14 -08:00
Tristan Penman
015d463d0c Basic memory management for Subschema instances in Schema class 2016-02-02 15:06:14 -08:00
Tristan Penman
3e0a2d667e Add #pragma once to header files 2016-02-02 08:11:03 -08:00
Tristan Penman
491bafe256 Minor stylistic changes for consistency with existing code 2016-02-02 08:05:57 -08:00
Tengiz Sharafiev
8b069ccd23 Implement nlohmann/json utils 2016-02-02 17:50:35 +03:00
Tengiz Sharafiev
c1ac8ba194 Implement adapter for nlohmann/json 2016-02-02 17:50:35 +03:00
Tengiz Sharafiev
992fa11736 Add empty header from nlohmann/json adapter
Based on json11_adapter.hpp
2016-02-02 17:50:35 +03:00
Tristan Penman
564f9df30f Remove redundant const references that didn't really aid readability 2016-01-29 17:30:43 -08:00
Tristan Penman
b9570e92c1 Minor tweak to capitalisation of json11 in comment 2016-01-29 17:30:11 -08:00
hotwatermorning
67e93e21ae Fix condition of isInteger. 2016-01-26 14:49:42 +09:00
hotwatermorning
04dc77b87c Support dropbox/json11. 2016-01-26 14:43:09 +09:00
Tristan Penman
a64c3c4e30 Update type checks in ValidatorVisitor to use allow loose type conversions when strictTypes flag is not set 2016-01-16 12:58:52 +11:00
Tristan Penman
222e593733 Use asBool() instead of getBool() when parsing 'additionalItems' and 'required' constraints 2016-01-14 21:47:54 +11:00
Tristan Penman
29367ccf0b Use asBool() instead of getBool() to get value of uniqueItems constraint 2016-01-14 21:41:17 +11:00
Tristan Penman
476d2c645a Remove unnecessary include form property_tree_utils.hpp 2016-01-13 17:17:51 +11:00
Tristan Penman
71a6b64e0e Allow SchemaParser to track path to current node in recursive populateSchema calls 2015-12-22 18:25:07 +11:00
Tristan Penman
cdabbe5549 Update SchemaParser to pass optional resolution scope with recursive fn calls 2015-12-22 17:40:45 +11:00
Tristan Penman
79267593f3 Remove unwanted arguments from publicly accessible populateSchema function 2015-12-22 17:33:24 +11:00
Tristan Penman
00686e26f0 Add header file with placeholder functions for working with absolute and relative URIs 2015-12-22 11:06:15 +11:00
Tristan Penman
3365287ef0 Add support for decoding %-encoded characters in JSON Pointer path fragments 2015-12-22 10:36:20 +11:00
Tristan Penman
592e6db083 Move functionality from Schema class to a new Subschema class (superclass for Schema), and remove dead code 2015-12-22 10:26:51 +11:00
Tristan Penman
0227384534 Add support for 'description' and 'title' attributes 2015-12-21 23:20:29 +11:00
Tristan Penman
9ec9a37222 Fix minor issues raised by Doxygen and add a few missing doc-comments 2015-12-20 08:16:16 +11:00
Tristan Penman
6546a9a945 Adapt existing tests to cover GenericRapidJsonAdapter when using a value type backed by RapidJson's CrtAllocator 2015-12-07 22:01:06 +11:00
Tristan Penman
414c46b423 Rename RapidJsonAdapter template class to GenericRapidJsonAdapter and add typedefs for old class names 2015-12-04 08:18:17 +11:00
Michael Smith
e7da07f60a (#7) Generalize rapidjson adapter for GenericValue
We've found the rapidjson MemoryPoolAllocator is buggy on SPARC, and for
the moment we're avoiding it as not being a large performance benefit.
The adapter assumes MemoryPoolAllocator, so we can't use valijson
without it. Templatize the rapidjson adapter so it can be used more
generically.
2015-12-04 08:18:17 +11:00
Tristan Penman
650f122a79 Fix incorrect return value for maybeObject() method in BasicAdapter template class 2015-11-24 14:28:56 +11:00
Tristan Penman
6b8a394cbf Update BasicAdapter to use strtod instead of istringstream for string-to-double conversions 2015-10-19 11:55:21 +11:00
Tristan Penman
cd21f7b250 Fix uninitialised value issues detected by Valgrind when using older versions of RapidJson 2015-10-18 20:29:16 +11:00
Tristan Penman
9216f5f6f1 Fix build issues and compiler warnings with MSVC 2013 2015-10-17 08:27:39 +11:00
Tristan Penman
9b3779a57b Move functions for parsing/unpacking JSON Reference strings to separate header file 2015-10-16 21:33:40 +11:00
Tristan Penman
b54e0b85ae Rename compiler guard for json_pointer.hpp and correct comment after closing of namespace 2015-10-15 14:37:21 +11:00
Tristan Penman
05214c6630 Include property name in validation error when unmatched against properties or regexes in PropertiesConstraint 2015-10-13 13:10:43 +11:00
Tristan Penman
43f7be480a Allow schema parser to resolve local JSON references from root of document 2015-10-13 12:09:46 +11:00
Hiroyuki Kobayashi
04ff1dec15 Push oneOf constraint error only when validation fails actually 2015-07-06 22:52:55 +09:00