@@ -352,13 +352,10 @@ def build_union_property(
352352) -> Tuple [Union [UnionProperty , PropertyError ], Schemas ]:
353353 sub_properties : List [Property ] = []
354354
355- for i , sub_prop_data in enumerate (
356- [
357- data
358- for sublists in filter (lambda x : isinstance (x , Iterable ), [[], data .anyOf , data .oneOf ])
359- for data in sublists
360- ]
361- ):
355+ sub_props_data_matrix : List [Union [oai .Schema , oai .Reference ]] = filter (
356+ lambda x : isinstance (x , Iterable ), [[], data .anyOf , data .oneOf ]
357+ )
358+ for i , sub_prop_data in enumerate ([data for flattenedlist in sub_props_data_matrix for data in flattenedlist ]):
362359 sub_prop , schemas = property_from_data (
363360 name = f"{ name } _type{ i } " ,
364361 required = required ,
@@ -445,12 +442,12 @@ def _property_from_data(
445442 if isinstance (data , oai .Reference ):
446443 return _property_from_ref (name = name , required = required , parent = None , data = data , schemas = schemas )
447444
445+ sub_props_data_matrix : List [Union [oai .Schema , oai .Reference ]] = filter (
446+ lambda x : isinstance (x , Iterable ), [[], data .anyOf , data .oneOf ]
447+ )
448+ sub_data = [data for flattenedlist in sub_props_data_matrix for data in flattenedlist ]
449+
448450 # A union of a single reference should just be passed through to that reference (don't create copy class)
449- sub_data = [
450- data
451- for sublists in filter (lambda x : isinstance (x , Iterable ), [[], data .allOf , data .anyOf , data .oneOf ])
452- for data in sublists
453- ]
454451 if len (sub_data ) == 1 and isinstance (sub_data [0 ], oai .Reference ):
455452 return _property_from_ref (name = name , required = required , parent = data , data = sub_data [0 ], schemas = schemas )
456453
0 commit comments