diff --git a/examples/json_schema.py b/examples/json_schema.py new file mode 100755 index 00000000..b1b8c179 --- /dev/null +++ b/examples/json_schema.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +import json +import sys + +from robotpy_build.config.autowrap_yml import AutowrapConfigYaml + +schema = AutowrapConfigYaml.schema() +nullable_types = ( + "PropData", + "ClassData", + "EnumData", + "FunctionData", +) + +for name, definition in schema["definitions"].items(): + if ( + name in nullable_types + and definition["type"] == "object" + and "default" not in definition + ): + definition["type"] = ["object", "null"] + +json.dump(schema, sys.stdout, indent="\t")