from typing import Generic, List from modules.task import QTask from utils.types import A, C, Q, V class QVariant(Generic[C, V, Q, A]): tasks: List[QTask[C, V, Q, A]] def __iter__(self): for task in self.tasks: yield task