Skip to content

Commit

Permalink
Fix exclusion of fractions/quicktions in type checks
Browse files Browse the repository at this point in the history
  • Loading branch information
levinericzimmermann committed Nov 5, 2022
1 parent d5f9bdc commit dafdf6c
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 6 deletions.
4 changes: 3 additions & 1 deletion mutwo/core_constants/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@
import fractions
import typing

Real = typing.Union[float, fractions.Fraction, int]
import quicktions

Real = typing.Union[float, fractions.Fraction, quicktions.Fraction, int]
"""The main reason for this constant is a mypy issue with Pythons buildin
[numbers module](https://docs.python.org/3/library/numbers.html) which
is documented [here](https://github.com/python/mypy/issues/3186). Mypy
Expand Down
13 changes: 8 additions & 5 deletions mutwo/core_events/configurations.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
"""Configurations which are shared for all event classes in :mod:`mutwo.core_events`."""

import fractions
import typing

try:
import quicktions as fractions
except ImportError:
import fractions
import quicktions

# XXX: We can't set core_converters.UnknownObjectToObject
# directly because it would raise a circular import error.
Expand All @@ -14,7 +12,12 @@ def __unknown_object_to_duration(unknown_object):
from mutwo import core_parameters

return core_converters.UnknownObjectToObject[core_parameters.abc.Duration](
(((float, int, fractions.Fraction), core_parameters.DirectDuration),)
(
(
(float, int, fractions.Fraction, quicktions.Fraction),
core_parameters.DirectDuration,
),
)
)(unknown_object)


Expand Down

0 comments on commit dafdf6c

Please sign in to comment.