From 9ba527afa28d9264237e1168211a2a5924f0cdc4 Mon Sep 17 00:00:00 2001 From: Han Yeong-woo Date: Mon, 12 Feb 2024 14:56:29 +0900 Subject: [PATCH] Improve typing `deck_due_tree()` (#3003) * Improve typing `deck_due_tree()` * Add me to CONTRIBUTORS --- CONTRIBUTORS | 1 + pylib/anki/scheduler/base.py | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 77a9eb842..1f1ad16fc 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -160,6 +160,7 @@ Pedro Lameiras Kai Knoblich Lucas Scharenbroch Antonio Cavallo +Han Yeong-woo ******************** diff --git a/pylib/anki/scheduler/base.py b/pylib/anki/scheduler/base.py index d84194cee..4316170cd 100644 --- a/pylib/anki/scheduler/base.py +++ b/pylib/anki/scheduler/base.py @@ -22,7 +22,7 @@ ScheduleCardsAsNewDefaults = scheduler_pb2.ScheduleCardsAsNewDefaultsResponse FilteredDeckForUpdate = decks_pb2.FilteredDeckForUpdate RepositionDefaults = scheduler_pb2.RepositionDefaultsResponse -from typing import Sequence +from typing import Sequence, overload from anki import config_pb2 from anki.cards import CardId @@ -65,6 +65,14 @@ class SchedulerBase(DeprecatedNamesMixin): # Deck list ########################################################################## + @overload + def deck_due_tree(self, top_deck_id: None = None) -> DeckTreeNode: + ... + + @overload + def deck_due_tree(self, top_deck_id: DeckId) -> DeckTreeNode | None: + ... + def deck_due_tree(self, top_deck_id: DeckId | None = None) -> DeckTreeNode | None: """Returns a tree of decks with counts. If top_deck_id provided, only the according subtree is returned."""