Fix(steps): Typing steps are bypassed
Useless steps where complex objects were built are not shown. I create a typing function which is called when compute raise NotImplementedError.
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
Divide MO
|
||||
"""
|
||||
|
||||
from decimal import Decimal
|
||||
from multipledispatch import Dispatcher
|
||||
from ..tree import Tree
|
||||
from ..MO.mo import MO, MOnumber
|
||||
@@ -66,12 +67,22 @@ def divide_filter(left, right):
|
||||
def monumber_monumber(left, right):
|
||||
""" Divide 2 monumbers and return a MOFraction
|
||||
|
||||
>>> a = MOnumber(4)
|
||||
>>> b = MOnumber(6.2)
|
||||
>>> monumber_monumber(a, b)
|
||||
Decimal('0.6451612903225806266768278939')
|
||||
>>> a = MOnumber(4)
|
||||
>>> b = MOnumber(6)
|
||||
>>> monumber_monumber(a, b)
|
||||
<MOFraction 4 / 6>
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
NotImplementedError: Can't divide 2 int. Need to create a Fraction instead
|
||||
"""
|
||||
return MOFraction(left, right)
|
||||
if type(left.value) in [float, Decimal] or \
|
||||
type(right.value) in [float, Decimal]:
|
||||
return left / right
|
||||
else:
|
||||
raise NotImplementedError("Can't divide 2 int. Need to create a Fraction instead")
|
||||
|
||||
@divide.register(MOnumber, MOFraction)
|
||||
@special_case(divide_filter)
|
||||
|
Reference in New Issue
Block a user