summaryrefslogtreecommitdiff
path: root/src/buildstream/_artifactelement.py
diff options
context:
space:
mode:
authorChandan Singh <chandan@chandansingh.net>2019-06-30 02:43:56 +0100
committerChandan Singh <chandan@chandansingh.net>2019-09-02 21:56:34 +0100
commit419a3afbe6e774c9182001977874c8ea08a9f49d (patch)
tree18d3c0f24179ae843caa76db46d4c38478e81dd7 /src/buildstream/_artifactelement.py
parent3641578dcac7bd514f8e074835841f381a36c877 (diff)
downloadbuildstream-419a3afbe6e774c9182001977874c8ea08a9f49d.tar.gz
Add initial mypy configuration and types
As a first step, add type hints to variables whose type `mypy` cannot infer automatically. This is the minimal set of type hints that allow running `mypy` without any arguments, and having it not fail. We currently ignore C extensions that mypy can't process directly. Later, we can look into generating stubs for such modules (potentially automatically).
Diffstat (limited to 'src/buildstream/_artifactelement.py')
-rw-r--r--src/buildstream/_artifactelement.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/buildstream/_artifactelement.py b/src/buildstream/_artifactelement.py
index cfd3c29c8..e3bffaf72 100644
--- a/src/buildstream/_artifactelement.py
+++ b/src/buildstream/_artifactelement.py
@@ -16,12 +16,18 @@
#
# Authors:
# James Ennis <james.ennis@codethink.co.uk>
+
+from typing import TYPE_CHECKING
+
from . import Element
from . import _cachekey
from ._exceptions import ArtifactElementError
from ._loader.metaelement import MetaElement
from .types import Scope
+if TYPE_CHECKING:
+ from typing import Dict
+
# ArtifactElement()
#
@@ -33,7 +39,8 @@ from .types import Scope
#
class ArtifactElement(Element):
- __instantiated_artifacts = {} # A hash of ArtifactElement by ref
+ # A hash of ArtifactElement by ref
+ __instantiated_artifacts = {} # type: Dict[str, ArtifactElement]
def __init__(self, context, ref):
_, element, key = verify_artifact_ref(ref)