'Returns the number closest to a, in direction towards b.
The result is the closest representable number from the first
operand (but not the first operand) that is in the direction
towards the second operand, unless the operands have the same
value.
>>> c = ExtendedContext.copy()
>>> c.Emin = -999
>>> c.Emax = 999
>>> c.next_toward(Decimal(\'1\'), Decimal(\'2\'))
Decimal(\'1.00000001\')
>>> c.next_toward(Decimal(\'-1E-1007\'), Decimal(\'1\'))
Decimal(\'-0E-1007\')
>>> c.next_toward(Decimal(\'-1.00000003\'), Decimal(\'0\'))
Decimal(\'-1.00000002\')
>>> c.next_toward(Decimal(\'1\'), Decimal(\'0\'))
Decimal(\'0.999999999\')
>>> c.next_toward(Decimal(\'1E-1007\'), Decimal(\'-100\'))
Decimal(\'0E-1007\')
>>> c.next_toward(Decimal(\'-1.00000003\'), Decimal(\'-10\'))
Decimal(\'-1.00000004\')
>>> c.next_toward(Decimal(\'0.00\'), Decimal(\'-0.0000\'))
Decimal(\'-0.00\')
>>> c.next_toward(0, 1)
Decimal(\'1E-1007\')
>>> c.next_toward(Decimal(0), 1)
Decimal(\'1E-1007\')
>>> c.next_toward(0, Decimal(1))
Decimal(\'1E-1007\')'

def next_toward(self, a, b):

    a = _convert_other(a, raiseit=True)
    return a.next_toward(b, context=self)
