pub fn merge_properties(s: &mut Schema, merge: &mut Schema)
Expand description
Merge schema properties in order to pass overrides or extension properties from the other schema.
use schemars::JsonSchema;
use kube::core::{Rule, merge_properties};
#[derive(JsonSchema)]
struct MyStruct {
a: Option<bool>,
}
#[derive(JsonSchema)]
struct MySecondStruct {
a: bool,
b: Option<bool>,
}
let gen = &mut schemars::gen::SchemaSettings::openapi3().into_generator();
let mut first = MyStruct::json_schema(gen);
let mut second = MySecondStruct::json_schema(gen);
merge_properties(&mut first, &mut second);
assert_eq!(
serde_json::to_string(&first).unwrap(),
r#"{"type":"object","properties":{"a":{"type":"boolean"},"b":{"type":"boolean","nullable":true}}}"#
);