Skip to content

Commit eb4b92f

Browse files
committed
Improve readability in get_possible_concrete_types
1 parent ba5c349 commit eb4b92f

File tree

1 file changed

+23
-23
lines changed

1 file changed

+23
-23
lines changed

strawberry_django/utils/inspect.py

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -180,30 +180,30 @@ def get_possible_concrete_types(
180180
looked at. Currently, this is only supported for django-polymorphic.
181181
"""
182182
for object_definition in get_possible_type_definitions(strawberry_type):
183-
if object_definition.is_interface:
184-
interface_definitions = _interfaces[schema].get(object_definition)
185-
if interface_definitions is None:
186-
interface_definitions = []
187-
for t in schema.schema_converter.type_map.values():
188-
t_definition = t.definition
189-
if isinstance(
190-
t_definition, StrawberryObjectDefinition
191-
) and issubclass(t_definition.origin, object_definition.origin):
192-
interface_definitions.append(t_definition)
193-
_interfaces[schema][object_definition] = interface_definitions
194-
195-
for interface_definition in interface_definitions:
196-
dj_definition = get_django_definition(interface_definition.origin)
197-
if dj_definition and (
198-
issubclass(model, dj_definition.model)
199-
or (
200-
_can_optimize_subtypes(model)
201-
and issubclass(dj_definition.model, model)
202-
)
203-
):
204-
yield interface_definition
205-
else:
183+
if not object_definition.is_interface:
206184
yield object_definition
185+
continue
186+
interface_definitions = _interfaces[schema].get(object_definition)
187+
if interface_definitions is None:
188+
interface_definitions = []
189+
for t in schema.schema_converter.type_map.values():
190+
t_definition = t.definition
191+
if isinstance(t_definition, StrawberryObjectDefinition) and issubclass(
192+
t_definition.origin, object_definition.origin
193+
):
194+
interface_definitions.append(t_definition)
195+
_interfaces[schema][object_definition] = interface_definitions
196+
197+
for interface_definition in interface_definitions:
198+
dj_definition = get_django_definition(interface_definition.origin)
199+
if dj_definition and (
200+
issubclass(model, dj_definition.model)
201+
or (
202+
_can_optimize_subtypes(model)
203+
and issubclass(dj_definition.model, model)
204+
)
205+
):
206+
yield interface_definition
207207

208208

209209
@dataclasses.dataclass(eq=True)

0 commit comments

Comments
 (0)