k8s_openapi_codegen_common/templates/
mod.rs
1#![allow(clippy::needless_raw_string_hashes)]
2
3pub(crate) mod impl_deserialize;
4
5pub(crate) mod impl_listable_resource;
6
7pub(crate) mod impl_metadata;
8
9pub(crate) mod impl_resource;
10
11pub(crate) mod impl_schema;
12
13pub(crate) mod impl_serialize;
14
15pub(crate) mod int_or_string;
16
17pub(crate) mod json_schema_props_or;
18
19pub(crate) mod newtype;
20
21pub(crate) mod patch;
22
23pub(crate) mod r#struct;
24
25pub(crate) mod struct_deep_merge;
26
27pub(crate) mod type_header;
28
29pub(crate) mod watch_event;
30
31#[derive(Clone, Copy, Default)]
32pub(crate) struct Generics<'a> {
33 pub(crate) type_part: Option<&'a str>,
34 pub(crate) where_part: Option<&'a str>,
35}
36
37pub(crate) struct Property<'a> {
38 pub(crate) name: &'a str,
39 pub(crate) comment: Option<&'a str>,
40 pub(crate) field_name: std::borrow::Cow<'static, str>,
41 pub(crate) field_type_name: String,
42 pub(crate) required: PropertyRequired,
43 pub(crate) is_flattened: bool,
44 pub(crate) merge_type: &'a crate::swagger20::MergeType,
45}
46
47#[derive(Clone, Copy)]
48pub(crate) enum PropertyRequired {
49 Required { is_default: bool },
50 Optional,
51
52 #[allow(unused)]
56 OptionalDefault,
57}
58
59#[derive(Clone, Copy)]
60pub(crate) struct ResourceMetadata<'a> {
61 pub(crate) api_version: &'a str,
62 pub(crate) group: &'a str,
63 pub(crate) kind: &'a str,
64 pub(crate) version: &'a str,
65 pub(crate) list_kind: Option<&'a str>,
66 pub(crate) metadata_ty: Option<&'a str>,
67 pub(crate) url_path_segment_and_scope: (&'a str, &'a str),
68}
69
70#[derive(Clone, Copy)]
71pub(crate) enum DateTimeSerializationFormat {
72 Default,
73 SixDecimalDigits,
74 ZeroDecimalDigits,
75}