Public Member Functions | |
| virtual | ~schema ()=default |
| schema (root_schema *root) | |
| virtual void | validate (const json::json_pointer &ptr, const json &instance, json_patch &patch, error_handler &e) const =0 |
| virtual const json & | default_value (const json::json_pointer &, const json &, error_handler &) const |
| void | set_default_value (const json &v) |
| virtual | ~schema ()=default |
| schema (root_schema *root) | |
| virtual void | validate (const json::json_pointer &ptr, const json &instance, json_patch &patch, error_handler &e) const =0 |
| virtual const json & | default_value (const json::json_pointer &, const json &, error_handler &) const |
| void | set_default_value (const json &v) |
Static Public Member Functions | |
| static std::shared_ptr< schema > | make (json &schema, root_schema *root, const std::vector< std::string > &key, std::vector< nlohmann::json_uri > uris) |
| static std::shared_ptr< schema > | make (json &schema, root_schema *root, const std::vector< std::string > &key, std::vector< nlohmann::json_uri > uris) |
Protected Member Functions | |
| virtual std::shared_ptr< schema > | make_for_default_ (std::shared_ptr<::schema > &, root_schema *, std::vector< nlohmann::json_uri > &, nlohmann::json &) const |
| virtual std::shared_ptr< schema > | make_for_default_ (std::shared_ptr<::schema > &, root_schema *, std::vector< nlohmann::json_uri > &, nlohmann::json &) const |
Protected Attributes | |
| root_schema * | root_ |
| json | default_value_ = nullptr |
Definition at line 38 of file json-validator.cpp.
|
virtualdefault |
|
inline |
Definition at line 57 of file json-validator.cpp.
References root_.
Referenced by anonymous_namespace{json-validator.cpp}::array::array(), anonymous_namespace{json-validator.cpp}::boolean::boolean(), anonymous_namespace{json-validator.cpp}::boolean_type::boolean_type(), anonymous_namespace{json-validator.cpp}::logical_not::logical_not(), anonymous_namespace{json-validator.cpp}::null::null(), anonymous_namespace{json-validator.cpp}::object::object(), anonymous_namespace{json-validator.cpp}::required::required(), anonymous_namespace{json-validator.cpp}::schema_ref::schema_ref(), anonymous_namespace{json-validator.cpp}::string::string(), and anonymous_namespace{json-validator.cpp}::type_schema::type_schema().
|
virtualdefault |
|
inline |
Definition at line 57 of file json-validator.cpp.
|
inlinevirtual |
Reimplemented in anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::schema_ref, and anonymous_namespace{json-validator.cpp}::schema_ref.
Definition at line 62 of file json-validator.cpp.
References default_value_.
Referenced by anonymous_namespace{json-validator.cpp}::logical_not::default_value(), anonymous_namespace{json-validator.cpp}::schema_ref::default_value(), and anonymous_namespace{json-validator.cpp}::object::validate().
|
inlinevirtual |
Reimplemented in anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::schema_ref, and anonymous_namespace{json-validator.cpp}::schema_ref.
Definition at line 62 of file json-validator.cpp.
|
static |
Definition at line 1355 of file json-validator.cpp.
References nlohmann::json_uri::append(), nlohmann::json_uri::derive(), nlohmann::json_schema::root_schema::get_or_create_ref(), nlohmann::json_schema::root_schema::insert(), nlohmann::json_schema::root_schema::insert_unknown_keyword(), make(), make_for_default_(), and nlohmann::json_uri::to_string().
Referenced by anonymous_namespace{json-validator.cpp}::array::array(), nlohmann::json_schema::root_schema::get_or_create_ref(), nlohmann::json_schema::root_schema::insert_unknown_keyword(), anonymous_namespace{json-validator.cpp}::logical_combination< combine_logic >::logical_combination(), anonymous_namespace{json-validator.cpp}::logical_not::logical_not(), make(), anonymous_namespace{json-validator.cpp}::object::object(), nlohmann::json_schema::root_schema::set_root_schema(), and anonymous_namespace{json-validator.cpp}::type_schema::type_schema().
|
static |
|
inlineprotectedvirtual |
Reimplemented in anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::type_schema, and anonymous_namespace{json-validator.cpp}::type_schema.
Definition at line 45 of file json-validator.cpp.
Referenced by make().
|
inlineprotectedvirtual |
Reimplemented in anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::type_schema, and anonymous_namespace{json-validator.cpp}::type_schema.
Definition at line 45 of file json-validator.cpp.
Definition at line 67 of file json-validator.cpp.
References default_value_.
Referenced by anonymous_namespace{json-validator.cpp}::schema_ref::make_for_default_(), anonymous_namespace{json-validator.cpp}::type_schema::make_for_default_(), anonymous_namespace{json-validator.cpp}::object::object(), and anonymous_namespace{json-validator.cpp}::type_schema::type_schema().
Definition at line 67 of file json-validator.cpp.
|
pure virtual |
Implemented in anonymous_namespace{json-validator.cpp}::array, anonymous_namespace{json-validator.cpp}::array, anonymous_namespace{json-validator.cpp}::boolean, anonymous_namespace{json-validator.cpp}::boolean, anonymous_namespace{json-validator.cpp}::boolean_type, anonymous_namespace{json-validator.cpp}::boolean_type, anonymous_namespace{json-validator.cpp}::logical_combination< combine_logic >, anonymous_namespace{json-validator.cpp}::logical_combination< combine_logic >, anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::null, anonymous_namespace{json-validator.cpp}::null, anonymous_namespace{json-validator.cpp}::numeric< T >, anonymous_namespace{json-validator.cpp}::numeric< T >, anonymous_namespace{json-validator.cpp}::object, anonymous_namespace{json-validator.cpp}::object, anonymous_namespace{json-validator.cpp}::required, anonymous_namespace{json-validator.cpp}::required, anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::string, anonymous_namespace{json-validator.cpp}::string, anonymous_namespace{json-validator.cpp}::type_schema, and anonymous_namespace{json-validator.cpp}::type_schema.
Referenced by anonymous_namespace{json-validator.cpp}::array::validate(), anonymous_namespace{json-validator.cpp}::logical_combination< combine_logic >::validate(), anonymous_namespace{json-validator.cpp}::logical_not::validate(), anonymous_namespace{json-validator.cpp}::object::validate(), anonymous_namespace{json-validator.cpp}::schema_ref::validate(), anonymous_namespace{json-validator.cpp}::type_schema::validate(), and nlohmann::json_schema::root_schema::validate().
|
pure virtual |
Implemented in anonymous_namespace{json-validator.cpp}::array, anonymous_namespace{json-validator.cpp}::array, anonymous_namespace{json-validator.cpp}::boolean, anonymous_namespace{json-validator.cpp}::boolean, anonymous_namespace{json-validator.cpp}::boolean_type, anonymous_namespace{json-validator.cpp}::boolean_type, anonymous_namespace{json-validator.cpp}::logical_combination< combine_logic >, anonymous_namespace{json-validator.cpp}::logical_combination< combine_logic >, anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::logical_not, anonymous_namespace{json-validator.cpp}::null, anonymous_namespace{json-validator.cpp}::null, anonymous_namespace{json-validator.cpp}::numeric< T >, anonymous_namespace{json-validator.cpp}::numeric< T >, anonymous_namespace{json-validator.cpp}::object, anonymous_namespace{json-validator.cpp}::object, anonymous_namespace{json-validator.cpp}::required, anonymous_namespace{json-validator.cpp}::required, anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::schema_ref, anonymous_namespace{json-validator.cpp}::string, anonymous_namespace{json-validator.cpp}::string, anonymous_namespace{json-validator.cpp}::type_schema, and anonymous_namespace{json-validator.cpp}::type_schema.
Definition at line 42 of file json-validator.cpp.
Referenced by default_value(), anonymous_namespace{json-validator.cpp}::schema_ref::default_value(), set_default_value(), and anonymous_namespace{json-validator.cpp}::type_schema::validate().
|
protected |
Definition at line 41 of file json-validator.cpp.
Referenced by schema(), anonymous_namespace{json-validator.cpp}::string::string(), and anonymous_namespace{json-validator.cpp}::string::validate().