mypy clean
[kiosk.git] / grab_bag.py
index 49582fb16e6fafe2688d952abccdfe6d098fff7b..798ebcfb154b58c3fdbf9588bcc01bc4b69d140a 100644 (file)
@@ -1,29 +1,34 @@
+#!/usr/bin/env python3
+
 import random
+from typing import Iterable, List, Optional, Set
+
 
 class grab_bag(object):
-    def __init__(self):
-        self.contents = set()
+    def __init__(self) -> None:
+        self.contents: Set[str] = set()
 
-    def clear(self):
+    def clear(self) -> None:
         self.contents.clear()
 
-    def add(self, item):
+    def add(self, item: str) -> None:
         if item not in self.contents:
             self.contents.add(item)
 
-    def add_all(self, collection):
+    def add_all(self, collection: Iterable[str]) -> None:
         for x in collection:
             self.add(x)
 
-    def subset(self, count):
+    def subset(self, count: int) -> Optional[List[str]]:
         if len(self.contents) < count:
             return None
         subset = random.sample(self.contents, count)
         return subset
 
-    def size(self):
+    def size(self) -> int:
         return len(self.contents)
 
-#x = grab_bag()
-#x.add_all([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
-#print x.subset(3)
+
+# x = grab_bag()
+# x.add_all([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
+# print x.subset(3)