aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/ast
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2022-06-14 00:42:26 -0400
committerEli Schwartz <eschwartz@archlinux.org>2022-07-03 14:11:31 -0400
commit0703ee0aef68e235c1e22d6448b79dfbbb5c8039 (patch)
tree0f7ba031362d926b726852d2070ecc8377bdb5bd /mesonbuild/ast
parent46148f923b196e1b1d004e68d43edc2daca4dd25 (diff)
downloadmeson-0703ee0aef68e235c1e22d6448b79dfbbb5c8039.zip
meson-0703ee0aef68e235c1e22d6448b79dfbbb5c8039.tar.gz
meson-0703ee0aef68e235c1e22d6448b79dfbbb5c8039.tar.bz2
move various unused typing-only imports into type-checking blocks
Diffstat (limited to 'mesonbuild/ast')
-rw-r--r--mesonbuild/ast/interpreter.py22
-rw-r--r--mesonbuild/ast/postprocess.py5
-rw-r--r--mesonbuild/ast/visitor.py6
3 files changed, 21 insertions, 12 deletions
diff --git a/mesonbuild/ast/interpreter.py b/mesonbuild/ast/interpreter.py
index 63eb3e2..c510eee 100644
--- a/mesonbuild/ast/interpreter.py
+++ b/mesonbuild/ast/interpreter.py
@@ -14,12 +14,12 @@
# This class contains the basic functionality needed to run any interpreter
# or an interpreter-based tool.
+from __future__ import annotations
import os
import sys
import typing as T
-from .visitor import AstVisitor
from .. import mparser, mesonlib
from .. import environment
@@ -30,8 +30,6 @@ from ..interpreterbase import (
BreakRequest,
ContinueRequest,
default_resolve_key,
- TYPE_nvar,
- TYPE_nkwargs,
)
from ..interpreter import (
@@ -43,29 +41,33 @@ from ..interpreter import (
)
from ..mparser import (
- AndNode,
ArgumentNode,
ArithmeticNode,
ArrayNode,
AssignmentNode,
BaseNode,
- ComparisonNode,
ElementaryNode,
EmptyNode,
- ForeachClauseNode,
IdNode,
- IfClauseNode,
- IndexNode,
MethodNode,
NotNode,
- OrNode,
PlusAssignmentNode,
TernaryNode,
- UMinusNode,
)
if T.TYPE_CHECKING:
+ from .visitor import AstVisitor
from ..interpreter import Interpreter
+ from ..interpreterbase import TYPE_nkwargs, TYPE_nvar
+ from ..mparser import (
+ AndNode,
+ ComparisonNode,
+ ForeachClauseNode,
+ IfClauseNode,
+ IndexNode,
+ OrNode,
+ UMinusNode,
+ )
class DontCareObject(MesonInterpreterObject):
pass
diff --git a/mesonbuild/ast/postprocess.py b/mesonbuild/ast/postprocess.py
index 6d808be..0c28af0 100644
--- a/mesonbuild/ast/postprocess.py
+++ b/mesonbuild/ast/postprocess.py
@@ -14,11 +14,14 @@
# This class contains the basic functionality needed to run any interpreter
# or an interpreter-based tool
+from __future__ import annotations
from . import AstVisitor
-from .. import mparser
import typing as T
+if T.TYPE_CHECKING:
+ from .. import mparser
+
class AstIndentationGenerator(AstVisitor):
def __init__(self) -> None:
self.level = 0
diff --git a/mesonbuild/ast/visitor.py b/mesonbuild/ast/visitor.py
index 34a76a8..8a0e77b 100644
--- a/mesonbuild/ast/visitor.py
+++ b/mesonbuild/ast/visitor.py
@@ -14,8 +14,12 @@
# This class contains the basic functionality needed to run any interpreter
# or an interpreter-based tool
+from __future__ import annotations
-from .. import mparser
+import typing as T
+
+if T.TYPE_CHECKING:
+ from .. import mparser
class AstVisitor:
def __init__(self) -> None: