math.parser: simplify error types.
parent
437b1f8785
commit
bec49ff840
|
@ -191,8 +191,8 @@ unit-test
|
||||||
[ 1 0 >base ] must-fail
|
[ 1 0 >base ] must-fail
|
||||||
[ 1 -1 >base ] must-fail
|
[ 1 -1 >base ] must-fail
|
||||||
[ 2+1/2 -1 >base ] [ invalid-radix? ] must-fail-with
|
[ 2+1/2 -1 >base ] [ invalid-radix? ] must-fail-with
|
||||||
[ 123.456 8 >base ] [ invalid-base? ] must-fail-with
|
[ 123.456 8 >base ] [ invalid-radix? ] must-fail-with
|
||||||
[ 123.456 2 >base ] [ invalid-base? ] must-fail-with
|
[ 123.456 2 >base ] [ invalid-radix? ] must-fail-with
|
||||||
|
|
||||||
[ "0/0." ] [ 0.0 0.0 / number>string ] unit-test
|
[ "0/0." ] [ 0.0 0.0 / number>string ] unit-test
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,9 @@ IN: math.parser
|
||||||
|
|
||||||
ERROR: invalid-radix radix ;
|
ERROR: invalid-radix radix ;
|
||||||
|
|
||||||
ERROR: invalid-base n base ;
|
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
TUPLE: number-parse
|
TUPLE: number-parse
|
||||||
{ str read-only }
|
{ str read-only }
|
||||||
{ length fixnum read-only }
|
{ length fixnum read-only }
|
||||||
{ radix fixnum read-only } ;
|
{ radix fixnum read-only } ;
|
||||||
|
@ -409,11 +407,11 @@ M: ratio >base
|
||||||
dup [ 0 = ] find drop head >string
|
dup [ 0 = ] find drop head >string
|
||||||
fix-float ;
|
fix-float ;
|
||||||
|
|
||||||
: float>base ( n base -- str )
|
: float>base ( n radix -- str )
|
||||||
{
|
{
|
||||||
{ 16 [ float>hex ] }
|
{ 16 [ float>hex ] }
|
||||||
{ 10 [ "%.16g" format-float ] }
|
{ 10 [ "%.16g" format-float ] }
|
||||||
[ invalid-base ]
|
[ invalid-radix ]
|
||||||
} case ; inline
|
} case ; inline
|
||||||
|
|
||||||
PRIVATE>
|
PRIVATE>
|
||||||
|
|
Loading…
Reference in New Issue