4
4
from attrs import define as _attrs_define
5
5
from dateutil .parser import isoparse
6
6
7
+ from ..models .a_model_nullable_enum_inline import AModelNullableEnumInline
7
8
from ..models .an_all_of_enum import AnAllOfEnum
8
9
from ..models .an_enum import AnEnum
10
+ from ..models .an_enum_with_null import AnEnumWithNull
9
11
from ..models .different_enum import DifferentEnum
10
12
from ..types import UNSET , Unset
11
13
@@ -33,6 +35,8 @@ class AModel:
33
35
nullable_one_of_models (Union['FreeFormModel', 'ModelWithUnionProperty', None]):
34
36
model (ModelWithUnionProperty):
35
37
nullable_model (Union['ModelWithUnionProperty', None]):
38
+ nullable_enum_as_ref (Union[AnEnumWithNull, None]): For testing Enums with mixed string / null values
39
+ nullable_enum_inline (Union[AModelNullableEnumInline, None]):
36
40
any_value (Union[Unset, Any]):
37
41
an_optional_allof_enum (Union[Unset, AnAllOfEnum]):
38
42
nested_list_of_enums (Union[Unset, List[List[DifferentEnum]]]):
@@ -57,6 +61,8 @@ class AModel:
57
61
nullable_one_of_models : Union ["FreeFormModel" , "ModelWithUnionProperty" , None ]
58
62
model : "ModelWithUnionProperty"
59
63
nullable_model : Union ["ModelWithUnionProperty" , None ]
64
+ nullable_enum_as_ref : Union [AnEnumWithNull , None ]
65
+ nullable_enum_inline : Union [AModelNullableEnumInline , None ]
60
66
an_allof_enum_with_overridden_default : AnAllOfEnum = AnAllOfEnum .OVERRIDDEN_DEFAULT
61
67
any_value : Union [Unset , Any ] = UNSET
62
68
an_optional_allof_enum : Union [Unset , AnAllOfEnum ] = UNSET
@@ -122,6 +128,18 @@ def to_dict(self) -> Dict[str, Any]:
122
128
else :
123
129
nullable_model = self .nullable_model
124
130
131
+ nullable_enum_as_ref : Union [None , str ]
132
+ if isinstance (self .nullable_enum_as_ref , AnEnumWithNull ):
133
+ nullable_enum_as_ref = self .nullable_enum_as_ref .value
134
+ else :
135
+ nullable_enum_as_ref = self .nullable_enum_as_ref
136
+
137
+ nullable_enum_inline : Union [None , str ]
138
+ if isinstance (self .nullable_enum_inline , AModelNullableEnumInline ):
139
+ nullable_enum_inline = self .nullable_enum_inline .value
140
+ else :
141
+ nullable_enum_inline = self .nullable_enum_inline
142
+
125
143
any_value = self .any_value
126
144
127
145
an_optional_allof_enum : Union [Unset , str ] = UNSET
@@ -199,6 +217,8 @@ def to_dict(self) -> Dict[str, Any]:
199
217
"nullable_one_of_models" : nullable_one_of_models ,
200
218
"model" : model ,
201
219
"nullable_model" : nullable_model ,
220
+ "nullable_enum_as_ref" : nullable_enum_as_ref ,
221
+ "nullable_enum_inline" : nullable_enum_inline ,
202
222
}
203
223
)
204
224
if any_value is not UNSET :
@@ -342,6 +362,36 @@ def _parse_nullable_model(data: object) -> Union["ModelWithUnionProperty", None]
342
362
343
363
nullable_model = _parse_nullable_model (d .pop ("nullable_model" ))
344
364
365
+ def _parse_nullable_enum_as_ref (data : object ) -> Union [AnEnumWithNull , None ]:
366
+ if data is None :
367
+ return data
368
+ try :
369
+ if not isinstance (data , str ):
370
+ raise TypeError ()
371
+ componentsschemas_an_enum_with_null = AnEnumWithNull (data )
372
+
373
+ return componentsschemas_an_enum_with_null
374
+ except : # noqa: E722
375
+ pass
376
+ return cast (Union [AnEnumWithNull , None ], data )
377
+
378
+ nullable_enum_as_ref = _parse_nullable_enum_as_ref (d .pop ("nullable_enum_as_ref" ))
379
+
380
+ def _parse_nullable_enum_inline (data : object ) -> Union [AModelNullableEnumInline , None ]:
381
+ if data is None :
382
+ return data
383
+ try :
384
+ if not isinstance (data , str ):
385
+ raise TypeError ()
386
+ nullable_enum_inline = AModelNullableEnumInline (data )
387
+
388
+ return nullable_enum_inline
389
+ except : # noqa: E722
390
+ pass
391
+ return cast (Union [AModelNullableEnumInline , None ], data )
392
+
393
+ nullable_enum_inline = _parse_nullable_enum_inline (d .pop ("nullable_enum_inline" ))
394
+
345
395
any_value = d .pop ("any_value" , UNSET )
346
396
347
397
_an_optional_allof_enum = d .pop ("an_optional_allof_enum" , UNSET )
@@ -469,6 +519,8 @@ def _parse_not_required_nullable_model(data: object) -> Union["ModelWithUnionPro
469
519
nullable_one_of_models = nullable_one_of_models ,
470
520
model = model ,
471
521
nullable_model = nullable_model ,
522
+ nullable_enum_as_ref = nullable_enum_as_ref ,
523
+ nullable_enum_inline = nullable_enum_inline ,
472
524
any_value = any_value ,
473
525
an_optional_allof_enum = an_optional_allof_enum ,
474
526
nested_list_of_enums = nested_list_of_enums ,
0 commit comments