Crate k8s_openapi_codegen_common

Source
Expand description

This crate contains common code for the k8s-openapi code generator and the k8s-openapi-derive custom derive crate.

It can be used by code generators that want to generate crates like k8s-openapi and k8s-openapi-derive for Kubernetes-like software such as OpenShift.

  1. Create a swagger20::Spec value, either by deserializing it from an OpenAPI spec JSON file or by creating it manually.
  2. Invoke the run function for each definition in the spec.

Modules§

swagger20
This module contains types related to the OpenAPI types used in the Kubernetes spec.

Structs§

Error
Error type reported by run
RunResult
Statistics from a successful invocation of run

Enums§

GenerateSchema
Whether run should generate an impl of schemars::JsonSchema for the type or not.

Traits§

MapNamespace
A mechanism for converting (the components of) an openapi path to (the components of) a Rust namespace.
RunState
Used to create an impl of std::io::Write for each type that the type’s generated code will be written to.

Functions§

get_rust_ident
Converts the given string into a string that can be used as a Rust ident.
run
Each invocation of this function generates a single type specified by the definition_path parameter.