Fix negative zero
parent
37af854b18
commit
89d3c0c616
|
@ -77,10 +77,6 @@ unit-test
|
||||||
[ "-101.0e-2" string>number number>string ]
|
[ "-101.0e-2" string>number number>string ]
|
||||||
unit-test
|
unit-test
|
||||||
|
|
||||||
[ 5.0 ]
|
|
||||||
[ "10.0/2" string>number ]
|
|
||||||
unit-test
|
|
||||||
|
|
||||||
[ f ]
|
[ f ]
|
||||||
[ "1e1/2" string>number ]
|
[ "1e1/2" string>number ]
|
||||||
unit-test
|
unit-test
|
||||||
|
@ -104,3 +100,5 @@ unit-test
|
||||||
[ "1.0/0.0" ] [ 1.0 0.0 / number>string ] unit-test
|
[ "1.0/0.0" ] [ 1.0 0.0 / number>string ] unit-test
|
||||||
|
|
||||||
[ "-1.0/0.0" ] [ -1.0 0.0 / number>string ] unit-test
|
[ "-1.0/0.0" ] [ -1.0 0.0 / number>string ] unit-test
|
||||||
|
|
||||||
|
[ "-0.0" ] [ -0.0 number>string ] unit-test
|
||||||
|
|
|
@ -73,13 +73,14 @@ PRIVATE>
|
||||||
|
|
||||||
: base> ( str radix -- n/f )
|
: base> ( str radix -- n/f )
|
||||||
[
|
[
|
||||||
|
CHAR: . over member? [
|
||||||
|
string>float
|
||||||
|
] [
|
||||||
"-" ?head dup negative? set >r
|
"-" ?head dup negative? set >r
|
||||||
{
|
CHAR: / over member?
|
||||||
{ [ CHAR: / over member? ] [ string>ratio ] }
|
[ string>ratio ] [ string>integer ] if
|
||||||
{ [ CHAR: . over member? ] [ string>float ] }
|
|
||||||
[ string>integer ]
|
|
||||||
} cond
|
|
||||||
r> [ dup [ neg ] when ] when
|
r> [ dup [ neg ] when ] when
|
||||||
|
] if
|
||||||
] with-radix ;
|
] with-radix ;
|
||||||
|
|
||||||
: string>number ( str -- n/f ) 10 base> ;
|
: string>number ( str -- n/f ) 10 base> ;
|
||||||
|
|
Loading…
Reference in New Issue