From: Doug M. <do...@mc...> - 2003-10-23 14:50:11
|
This is a small improvement in handling floating-point arguments and return values. It's against anonCVS so maybe it's already been done... -Doug Index: Java.java =================================================================== RCS file: /cvsroot/armedbear-j/j/j/src/org/armedbear/lisp/Java.java,v retrieving revision 1.11 diff -u -r1.11 Java.java --- Java.java 22 Sep 2003 17:17:53 -0000 1.11 +++ Java.java 23 Oct 2003 13:30:08 -0000 @@ -204,6 +204,8 @@ initargs[i-1] = ((LispString)arg).getValue(); else if (arg instanceof Fixnum) initargs[i-1] = new Integer(((Fixnum)arg).getValue()); + else if (arg instanceof LispFloat) + initargs[i-1] = new Double(((LispFloat)arg).getValue()); } return new JavaObject(constructor.newInstance(initargs)); } @@ -281,6 +283,8 @@ return new Fixnum(((Integer)obj).intValue()); if (obj instanceof String) return new LispString((String)obj); + if (obj instanceof Double || obj instanceof Float) + return new LispFloat(((Number)obj).doubleValue()); if (obj instanceof Object[]) { Object[] array = (Object[]) obj; Vector v = new Vector(array.length); |
From: Peter G. <pe...@ar...> - 2003-10-25 13:08:18
|
Doug McNaught wrote: > This is a small improvement in handling floating-point arguments and > return values. It's against anonCVS so maybe it's already been > done... I've committed this, with a tiny bit of further reorganization. The last time I remember working on this file, ABL didn't support floats at all... ;) Thanks! -Peter |