Relative Content

Tag Archive for pythongenericsmypypython-typing

How do I safely type a function that accepts a Generic container class, in python?

from __future__ import annotations from datetime import datetime, UTC from typing import Any, Generic, Self, TypeVar from pydantic import AwareDatetime, BaseModel EventDataT_co = TypeVar(‘EventDataT_co’, covariant=True) class Event(BaseModel, Generic[EventDataT_co]): raised_at: AwareDatetime data: tuple[EventDataT_co, …] @classmethod def from_data(cls, *data: EventDataT_co) -> Self: return cls(raised_at=datetime.now(UTC), data=data) def save_events(*events: Event): … # not type-safe (someone might make unsafe assumption […]