Working on voice command logic.
[kiosk.git] / renderer.py
index fa95e346ec7ceb4ffabfd1179057f9fd512bb796..5f80e045ed886784a5b17579c70a69f009ed3baf 100644 (file)
@@ -4,7 +4,7 @@ from abc import ABC, abstractmethod
 from datetime import datetime
 from decorators import invocation_logged
 import time
-from typing import Dict, List, Set
+from typing import Dict, List, Optional, Set
 
 
 class renderer(ABC):
@@ -26,9 +26,9 @@ class abstaining_renderer(renderer):
         self.name_to_timeout_dict = name_to_timeout_dict
         self.last_runs = {}
         for key in name_to_timeout_dict:
-            self.last_runs[key] = 0
+            self.last_runs[key] = 0.0
 
-    def should_render(self, keys_to_skip: Set[str]) -> str:
+    def should_render(self, keys_to_skip: Set[str]) -> Optional[str]:
         now = time.time()
         for key in self.name_to_timeout_dict:
             if (
@@ -39,11 +39,11 @@ class abstaining_renderer(renderer):
 
     @invocation_logged
     def render(self) -> None:
-        tries_per_key = {}
-        keys_to_skip = set()
+        tries_per_key: Dict[str, int] = {}
+        keys_to_skip: Set[str] = set()
         while True:
             key = self.should_render(keys_to_skip)
-            if key == None:
+            if key is None:
                 break
 
             if key in tries_per_key: