--- source: crates/schematic/tests/macros_test.rs expression: "std::fs::read_to_string(file).unwrap()" --- { "$schema": "http://json-schema.org/draft-07/schema#", "title": "PartialValidations", "type": "object", "properties": { "basic": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "nested": { "anyOf": [ { "$ref": "#/definitions/PartialNestedValidations" }, { "type": "null" } ] }, "nested2": { "anyOf": [ { "$ref": "#/definitions/PartialNestedValidations" }, { "type": "null" } ] }, "optional": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false, "definitions": { "Aliased": { "title": "Aliased", "type": "string", "enum": [ "foo", "bar", "baz" ] }, "BasicEnum": { "title": "BasicEnum", "type": "string", "enum": [ "foo", "bar", "baz" ] }, "Comments": { "title": "Comments", "description": "Container comment.", "type": "object", "required": [ "block", "blockLong", "docs", "docsLong", "inlineBlock", "normal" ], "properties": { "block": { "description": "Block", "deprecated": true, "type": "boolean" }, "blockLong": { "description": "Block with a super long comment that will span multiple lines. Block with a super long comment that will span multiple lines.", "type": "boolean" }, "docs": { "description": "Docs", "deprecated": true, "type": "boolean" }, "docsLong": { "description": "Docs with a super long comment that will span multiple lines. It also **contains** some _markdown_ [stuff](.).", "type": "boolean" }, "inlineBlock": { "type": "boolean" }, "normal": { "type": "boolean" } }, "additionalProperties": false }, "DefaultValues": { "title": "DefaultValues", "type": "object", "required": [ "arrayOpt", "enums", "pathStringBox", "tupleOpt" ], "properties": { "array": { "type": "array", "items": { "type": "number" }, "maxItems": 4, "minItems": 4 }, "arrayOpt": { "anyOf": [ { "type": "array", "items": { "type": "number" }, "maxItems": 4, "minItems": 4 }, { "type": "null" } ] }, "boolean": { "default": true, "type": "boolean" }, "booleanFn": { "type": "boolean" }, "enums": { "default": "a", "allOf": [ { "$ref": "#/definitions/SomeEnum" } ] }, "fileString": { "default": "foo.json", "type": "string" }, "float32": { "default": 1.32, "type": "number" }, "float64": { "default": 1.64, "type": "number" }, "longString": { "default": "foo with. many values!", "type": "string" }, "number": { "default": 123, "type": "number" }, "pathString": { "default": "foo/bar", "type": "string", "format": "path" }, "pathStringBox": { "type": "string", "format": "path" }, "string": { "default": "foo", "type": "string" }, "stringFn": { "type": "string" }, "tuple": { "type": "array", "items": [ { "type": "number" }, { "type": "number" }, { "type": "number" }, { "type": "number" } ], "maxItems": 4, "minItems": 4 }, "tupleOpt": { "anyOf": [ { "type": "array", "items": [ { "type": "number" }, { "type": "number" }, { "type": "number" }, { "type": "number" } ], "maxItems": 4, "minItems": 4 }, { "type": "null" } ] }, "vector": { "type": "array", "items": { "type": "number" } } }, "additionalProperties": false }, "EnvVars": { "title": "EnvVars", "type": "object", "required": [ "advanced", "basic" ], "properties": { "advanced": { "type": "array", "items": { "type": "string" } }, "basic": { "type": "string" } }, "additionalProperties": false }, "ExtendsEnum": { "title": "ExtendsEnum", "type": "object", "required": [ "extends" ], "properties": { "extends": { "allOf": [ { "$ref": "#/definitions/ExtendsFrom" } ] } }, "additionalProperties": false }, "ExtendsFrom": { "title": "ExtendsFrom", "anyOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ] }, "ExtendsList": { "title": "ExtendsList", "type": "object", "required": [ "extends" ], "properties": { "extends": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false }, "ExtendsOptional": { "title": "ExtendsOptional", "type": "object", "required": [ "extends" ], "properties": { "extends": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "additionalProperties": false }, "ExtendsString": { "title": "ExtendsString", "type": "object", "required": [ "extends" ], "properties": { "extends": { "type": "string" } }, "additionalProperties": false }, "Merging": { "title": "Merging", "type": "object", "required": [ "basic" ], "properties": { "basic": { "type": "string" } }, "additionalProperties": false }, "NestedValidations": { "title": "NestedValidations", "type": "object", "required": [ "basic" ], "properties": { "basic": { "type": "string" } }, "additionalProperties": false }, "OptionalValues": { "title": "OptionalValues", "type": "object", "required": [ "optional", "required" ], "properties": { "optional": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": { "type": "boolean" } }, "additionalProperties": false }, "OtherEnum": { "title": "OtherEnum", "anyOf": [ { "const": "foo" }, { "deprecated": true, "const": "bar" }, { "const": "baz" }, { "type": "string" } ] }, "PartialDefaultValues": { "title": "PartialDefaultValues", "type": "object", "properties": { "array": { "anyOf": [ { "type": "array", "items": { "type": "number" }, "maxItems": 4, "minItems": 4 }, { "type": "null" } ] }, "arrayOpt": { "anyOf": [ { "type": "array", "items": { "type": "number" }, "maxItems": 4, "minItems": 4 }, { "type": "null" } ] }, "boolean": { "default": true, "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "booleanFn": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "enums": { "default": "a", "anyOf": [ { "$ref": "#/definitions/SomeEnum" }, { "type": "null" } ] }, "fileString": { "default": "foo.json", "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "float32": { "default": 1.32, "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "float64": { "default": 1.64, "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "longString": { "default": "foo with. many values!", "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "number": { "default": 123, "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "pathString": { "default": "foo/bar", "anyOf": [ { "type": "string", "format": "path" }, { "type": "null" } ] }, "pathStringBox": { "anyOf": [ { "type": "string", "format": "path" }, { "type": "null" } ] }, "string": { "default": "foo", "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "stringFn": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "tuple": { "anyOf": [ { "type": "array", "items": [ { "type": "number" }, { "type": "number" }, { "type": "number" }, { "type": "number" } ], "maxItems": 4, "minItems": 4 }, { "type": "null" } ] }, "tupleOpt": { "anyOf": [ { "type": "array", "items": [ { "type": "number" }, { "type": "number" }, { "type": "number" }, { "type": "number" } ], "maxItems": 4, "minItems": 4 }, { "type": "null" } ] }, "vector": { "anyOf": [ { "type": "array", "items": { "type": "number" } }, { "type": "null" } ] } }, "additionalProperties": false }, "PartialNested": { "title": "PartialNested", "type": "object", "properties": { "list": { "anyOf": [ { "type": "array", "items": { "$ref": "#/definitions/PartialValueTypes" } }, { "type": "null" } ] }, "map": { "anyOf": [ { "type": "object", "additionalProperties": { "$ref": "#/definitions/PartialValueTypes" }, "propertyNames": { "type": "string" } }, { "type": "null" } ] }, "map2": { "anyOf": [ { "type": "object", "additionalProperties": { "$ref": "#/definitions/PartialValueTypes" }, "propertyNames": { "type": "string" } }, { "type": "null" } ] }, "one": { "anyOf": [ { "$ref": "#/definitions/PartialValueTypes" }, { "type": "null" } ] }, "two": { "anyOf": [ { "$ref": "#/definitions/PartialValueTypes" }, { "type": "null" } ] } }, "additionalProperties": false }, "PartialNestedValidations": { "title": "PartialNestedValidations", "type": "object", "properties": { "basic": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "PartialValueTypes": { "title": "PartialValueTypes", "type": "object", "properties": { "boolean": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "enums": { "default": "a", "anyOf": [ { "$ref": "#/definitions/SomeEnum" }, { "type": "null" } ] }, "map": { "anyOf": [ { "type": "object", "additionalProperties": { "type": "number" }, "propertyNames": { "type": "string" } }, { "type": "null" } ] }, "number": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "rest": { "anyOf": [ { "type": "object", "additionalProperties": { "type": [ "boolean", "object", "array", "number", "string", "integer" ] }, "propertyNames": { "type": "string" } }, { "type": "null" } ] }, "s3_value": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "string": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "vector": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] } }, "additionalProperties": false }, "Serde": { "title": "Serde", "type": "object", "required": [ "renamed" ], "properties": { "renamed": { "type": "string" } }, "additionalProperties": false }, "SerdeNativeRenamed": { "title": "SerdeNativeRenamed", "type": "object", "required": [ "renamed" ], "properties": { "renamed": { "type": "string" } }, "additionalProperties": false }, "SomeEnum": { "title": "SomeEnum", "type": "string", "enum": [ "a", "b", "c" ] }, "Test": { "title": "Test", "type": "string", "enum": [ "FOO", "bAr", "b-a-z" ] }, "UnnamedMultiple": { "title": "UnnamedMultiple", "type": "array", "items": [ { "type": "string" }, { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, { "type": "boolean" } ], "maxItems": 3, "minItems": 3 }, "Validations": { "title": "Validations", "type": "object", "required": [ "basic", "nested", "nested2", "optional", "required" ], "properties": { "basic": { "type": "string" }, "nested": { "allOf": [ { "$ref": "#/definitions/NestedValidations" } ] }, "nested2": { "anyOf": [ { "$ref": "#/definitions/NestedValidations" }, { "type": "null" } ] }, "optional": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "ValueTypes": { "title": "ValueTypes", "type": "object", "required": [ "boolean", "enums", "map", "number", "rest", "s3_value", "string", "vector" ], "properties": { "boolean": { "type": "boolean" }, "enums": { "default": "a", "allOf": [ { "$ref": "#/definitions/SomeEnum" } ] }, "map": { "type": "object", "additionalProperties": { "type": "number" }, "propertyNames": { "type": "string" } }, "number": { "type": "number" }, "rest": { "type": "object", "additionalProperties": { "type": [ "boolean", "object", "array", "number", "string", "integer" ] }, "propertyNames": { "type": "string" } }, "s3_value": { "type": "string" }, "string": { "type": "string" }, "vector": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false } } }