parent
2c5014e74e
commit
69f35b36aa
|
@ -75,11 +75,12 @@ TUPLE: float-parse
|
|||
[ drop 2.0 swap exponent>> (pow) * ] 2tri ; inline
|
||||
|
||||
: ?make-float ( float-parse n/f -- float/f )
|
||||
{ float-parse object } declare
|
||||
{
|
||||
{ [ dup not ] [ 2drop f ] }
|
||||
{ [ over radix>> 10 = ] [ make-float-dec-exponent ] }
|
||||
[ make-float-bin-exponent ]
|
||||
} cond ; inline
|
||||
} cond ;
|
||||
|
||||
: ?neg ( n/f -- -n/f )
|
||||
[ neg ] [ f ] if* ; inline
|
||||
|
@ -176,7 +177,8 @@ DEFER: @neg-digit
|
|||
} case ; inline
|
||||
|
||||
: ->denominator ( i number-parse n -- n/f )
|
||||
@split [ @denom-first-digit ] require-next-digit ?make-ratio ; inline
|
||||
{ fixnum number-parse integer } declare
|
||||
@split [ @denom-first-digit ] require-next-digit ?make-ratio ;
|
||||
|
||||
: @num-digit-or-punc ( i number-parse n char -- n/f )
|
||||
{
|
||||
|
@ -190,7 +192,8 @@ DEFER: @neg-digit
|
|||
digit-in-radix [ [ @num-digit-or-punc ] add-digit ] [ @abort ] if ;
|
||||
|
||||
: ->numerator ( i number-parse n -- n/f )
|
||||
@split [ @num-digit ] require-next-digit ?add-ratio ; inline
|
||||
{ fixnum number-parse integer } declare
|
||||
@split [ @num-digit ] require-next-digit ?add-ratio ;
|
||||
|
||||
: @pos-digit-or-punc ( i number-parse n char -- n/f )
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue