aboutsummaryrefslogtreecommitdiff
path: root/src/Exports.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-10-30 14:58:48 +0000
committerGravatar jesopo2018-10-30 14:58:48 +0000
commite07553c3627b80f20cdc81a35030bf0540924db8 (patch)
tree0a81640b280e007cbe5d2cb956681068ab80c58e /src/Exports.py
parentDon't needlessly search a youtube URL before getting the information for it's (diff)
signature
Add type/return hints throughout src/ and, in doing so, fix some cyclical
references.
Diffstat (limited to 'src/Exports.py')
-rw-r--r--src/Exports.py34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/Exports.py b/src/Exports.py
index 8baca50d..68b25933 100644
--- a/src/Exports.py
+++ b/src/Exports.py
@@ -1,28 +1,18 @@
-
-
-class ExportsContext(object):
- def __init__(self, parent, context):
- self._parent = parent
- self.context = context
-
- def add(self, setting, value):
- self._parent._context_add(self.context, setting, value)
- def get_all(self, setting):
- return self._parent.get_all(setting)
+import typing
class Exports(object):
def __init__(self):
self._exports = {}
self._context_exports = {}
- def new_context(self, context):
+ def new_context(self, context: str) -> "ExportsContext":
return ExportsContext(self, context)
- def add(self, setting, value):
+ def add(self, setting: str, value: typing.Any):
self._add(None, setting, value)
- def _context_add(self, context, setting, value):
+ def _context_add(self, context: str, setting: str, value: typing.Any):
self._add(context, setting, value)
- def _add(self, context, setting, value):
+ def _add(self, context: str, setting: str, value: typing.Any):
if context == None:
if not setting in self_exports:
self._exports[setting] = []
@@ -34,11 +24,21 @@ class Exports(object):
self._context_exports[context][setting] = []
self._context_exports[context][setting].append(value)
- def get_all(self, setting):
+ def get_all(self, setting: str) -> typing.List[typing.Any]:
return self._exports.get(setting, []) + sum([
exports.get(setting, []) for exports in
self._context_exports.values()], [])
- def purge_context(self, context):
+ def purge_context(self, context: str):
if context in self._context_exports:
del self._context_exports[context]
+
+class ExportsContext(object):
+ def __init__(self, parent: Exports, context: str):
+ self._parent = parent
+ self.context = context
+
+ def add(self, setting: str, value: typing.Any):
+ self._parent._context_add(self.context, setting, value)
+ def get_all(self, setting: str) -> typing.List[typing.Any]:
+ return self._parent.get_all(setting)