Skip to content

Commit 704e3c0

Browse files
committed
Python generator: use Mapping instead of Dict for type annotations
Fixes #414
1 parent 2841d4a commit 704e3c0

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

generator/plugins/python/utils.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ def _reset(self):
208208
self._imports: List[str] = [
209209
"import enum",
210210
"import functools",
211-
"from typing import Any, Dict, Literal, Optional, Sequence, Tuple, Union",
211+
"from typing import Any, Mapping, Literal, Optional, Sequence, Tuple, Union",
212212
"import attrs",
213213
"from . import validators",
214214
]
@@ -356,7 +356,7 @@ def _generate_type_name(
356356

357357
if type_def.kind == "map":
358358
# This kind defines a dictionary like object.
359-
return f"Dict[{self._generate_type_name(type_def.key, class_name, prefix)}, {self._generate_type_name(type_def.value, class_name, prefix)}]"
359+
return f"Mapping[{self._generate_type_name(type_def.key, class_name, prefix)}, {self._generate_type_name(type_def.value, class_name, prefix)}]"
360360

361361
if type_def.kind == "tuple":
362362
# This kind defined a tuple like object.
@@ -1154,11 +1154,11 @@ def _get_utility_code(self, lsp_model: model.LSPModel) -> List[str]:
11541154
"",
11551155
]
11561156

1157-
code_lines += ["", "ALL_TYPES_MAP: Dict[str, Union[type, object]] = {"]
1157+
code_lines += ["", "ALL_TYPES_MAP: Mapping[str, Union[type, object]] = {"]
11581158
code_lines += sorted([f"'{name}': {name}," for name in set(self._types.keys())])
11591159
code_lines += ["}", ""]
11601160

1161-
code_lines += ["_MESSAGE_DIRECTION: Dict[str, str] = {"]
1161+
code_lines += ["_MESSAGE_DIRECTION: Mapping[str, str] = {"]
11621162

11631163
code_lines += ["# Request methods"]
11641164
code_lines += sorted(

0 commit comments

Comments
 (0)