Skip to content

Commit

Permalink
order this
Browse files Browse the repository at this point in the history
  • Loading branch information
armandobelardo committed Sep 10, 2024
1 parent 7a80c07 commit 1b8d71a
Show file tree
Hide file tree
Showing 98 changed files with 259 additions and 249 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
from fern_python.declaration_referencer import AbstractDeclarationReferencer
from fern_python.generators.pydantic_model.custom_config import UnionNamingVersions
from fern_python.source_file_factory.source_file_factory import SourceFileFactory
from ordered_set import OrderedSet

from ..core_utilities import CoreUtilities

Expand Down Expand Up @@ -94,6 +95,10 @@ def does_type_reference_reference_other_type(
def get_referenced_types(self, type_id: ir_types.TypeId) -> Set[ir_types.TypeId]:
...

@abstractmethod
def get_referenced_types_ordered(self, type_id: ir_types.TypeId) -> OrderedSet[ir_types.TypeId]:
...

@abstractmethod
def get_class_name_for_type_id(self, type_id: ir_types.TypeId, as_request: bool) -> str:
...
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
from fern_python.codegen import AST, Filepath
from fern_python.declaration_referencer import AbstractDeclarationReferencer
from fern_python.generators.pydantic_model.custom_config import UnionNamingVersions
from ordered_set import OrderedSet

from .pydantic_generator_context import PydanticGeneratorContext
from .type_reference_to_type_hint_converter import TypeReferenceToTypeHintConverter
Expand Down Expand Up @@ -180,6 +181,10 @@ def does_type_reference_reference_other_type(
def get_referenced_types(self, type_id: ir_types.TypeId) -> Set[ir_types.TypeId]:
declaration = self.ir.types[type_id]
return self.get_referenced_types_of_type_declaration(declaration)

def get_referenced_types_ordered(self, type_id: ir_types.TypeId) -> OrderedSet[ir_types.TypeId]:
declaration = self.ir.types[type_id]
return OrderedSet(list(sorted(self.get_referenced_types_of_type_declaration(declaration))))

def get_declaration_for_type_id(
self,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@ def finish(self) -> None:

# Now take any transitive circular dependencies and add them as ghost references and update their forward refs
if self._type_name is not None:
for referenced_type in self._context.get_referenced_types(self._type_name.type_id):
for referenced_type in self._context.get_referenced_types_ordered(self._type_name.type_id):
self._add_update_forward_ref_for_transitive_circular_dependency(referenced_type)

self._pydantic_model.finish()
Expand Down
4 changes: 2 additions & 2 deletions seed/fastapi/simple-fhir/types/account.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions seed/fastapi/simple-fhir/types/base_resource.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions seed/fastapi/simple-fhir/types/memo.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions seed/fastapi/simple-fhir/types/patient.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions seed/fastapi/simple-fhir/types/practitioner.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions seed/fastapi/simple-fhir/types/script.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions seed/fastapi/trace/resources/problem/types/problem_info.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 1b8d71a

Please sign in to comment.