Skip to content

Commit 66a769f

Browse files
authored
style: add type hinting to distributions (queens-py#221)
* style: add type hinting to distributions * style: include Copilot's review comments * style: fix typos * style: include Gil's feedback
1 parent 2d42b1b commit 66a769f

18 files changed

+451
-390
lines changed

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ repos:
9898
(?x)(
9999
^(.gitlab|.github|config|doc|tests|test_utils)/|
100100
^src/(example_simulator_functions|queens_interfaces)/|
101-
^src/queens/(data_processors|distributions|drivers|iterators|models|parameters)/|
101+
^src/queens/(data_processors|drivers|iterators|models|parameters)/|
102102
^src/queens/(schedulers|stochastic_optimizers|variational_distributions|visualization)/|
103103
^src/queens/(main.py|global_settings.py)
104104
).*$

pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,11 +164,12 @@ disallow_untyped_calls = false # Change to true once all functions are typed
164164
disallow_untyped_decorators = true
165165
disallow_untyped_defs = true
166166
ignore_missing_imports = true
167+
disable_error_code = ["str-bytes-safe"]
167168
# Delete modules once type hinting has been introduced there
168169
exclude = '''(?x)(
169170
^(.gitlab|.github|config|doc|tests|test_utils)/|
170171
^src/(example_simulator_functions|queens_interfaces)/|
171-
^src/queens/(data_processors|distributions|drivers|iterators|models|parameters)/|
172+
^src/queens/(data_processors|drivers|iterators|models|parameters)/|
172173
^src/queens/(schedulers|stochastic_optimizers|variational_distributions|visualization)/|
173174
^src/queens/(main.py|global_settings.py)
174175
).*$'''

src/queens/distributions/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
from queens.utils.imports import extract_type_checking_imports, import_class_from_class_module_map
2222

2323
if TYPE_CHECKING:
24+
from queens.distributions._distribution import Distribution
2425
from queens.distributions.bernoulli import Bernoulli
2526
from queens.distributions.beta import Beta
2627
from queens.distributions.categorical import Categorical
@@ -38,5 +39,5 @@
3839
class_module_map = extract_type_checking_imports(__file__)
3940

4041

41-
def __getattr__(name):
42+
def __getattr__(name: str) -> "Distribution":
4243
return import_class_from_class_module_map(name, class_module_map, __name__)

0 commit comments

Comments
 (0)