codeflash-internal/cli/code_to_optimize/book_catalog2.py
2024-05-16 15:38:37 -07:00

32 lines
716 B
Python

from __future__ import annotations
from typing import Any, cast
from _typeshed import SupportsDunderGT, SupportsDunderLT
from sqlalchemy.orm import Session
from code_to_optimize.book_catalog import (
POSTGRES_CONNECTION_STRING,
Author,
Base,
Book,
_session,
_t,
authors,
authors_name,
engine,
init_table,
session_factory,
)
def get_authors(session: Session) -> list[Author]:
books: list[Book] = session.query(Book).all()
_authors: list[Author] = []
book: Book
for book in books:
_authors.append(book.author)
return sorted(
list(set(_authors)),
key=lambda x: cast(SupportsDunderLT[Any] | SupportsDunderGT[Any], x.id),
)