aboutsummaryrefslogtreecommitdiffstats
path: root/bot/utils/randomization.py
diff options
context:
space:
mode:
Diffstat (limited to 'bot/utils/randomization.py')
-rw-r--r--bot/utils/randomization.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/bot/utils/randomization.py b/bot/utils/randomization.py
index c9eabbd2..1caff3fa 100644
--- a/bot/utils/randomization.py
+++ b/bot/utils/randomization.py
@@ -1,7 +1,9 @@
import itertools
import random
from collections.abc import Iterable
-from typing import Any
+from typing import TypeVar
+
+T = TypeVar("T")
class RandomCycle:
@@ -11,11 +13,11 @@ class RandomCycle:
The iterable is reshuffled after each full cycle.
"""
- def __init__(self, iterable: Iterable):
+ def __init__(self, iterable: Iterable[T]):
self.iterable = list(iterable)
self.index = itertools.cycle(range(len(iterable)))
- def __next__(self) -> Any:
+ def __next__(self) -> T:
idx = next(self.index)
if idx == 0: