Changeset 14721


Ignore:
Timestamp:
08/17/14 19:38:08 (7 years ago)
Author:
Mark Evenson
Message:

Intermediary JNEW-RUNTIME-CLASS work: start adding failing tests.

Run the failing tests via

CL-USER> (asdf:load-system :abcl) (asdf:test-system :abcl-test-lisp)

c.f. <http://abcl.org/trac/ticket/330> and <http://abcl.org/trac/ticket/346>.

Start editing documentation for JNEW-RUNTIME-CLASS.

Add failing tests for cases that should work, indicating that we have
basic problems with the code at this point.

Location:
trunk/abcl
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/abcl.asd

    r14694 r14721  
    6565                      (:file "pathname-tests" :depends-on
    6666                             ("utilities"))
     67                      #+abcl
     68                      (:file "runtime-class")
    6769                      #+abcl
    6870                      (:file "package-local-nicknames-tests")))))
  • trunk/abcl/src/org/armedbear/lisp/runtime-class.lisp

    r14363 r14721  
    2929
    3030   Method definitions are lists of the form
    31    (method-name return-type argument-types function &key modifiers annotations)
    32    where method-name is a string, return-type and argument-types are strings or keywords for
    33    primitive types (:void, :int, etc.), and function is a Lisp function of minimum arity
    34    (1+ (length argument-types)); the instance (`this') is passed in as the first argument.
     31
     32     (METHOD-NAME RETURN-TYPE ARGUMENT-TYPES FUNCTION &key MODIFIERS ANNOTATIONS)
     33
     34   where
     35      METHOD-NAME is a string
     36      RETURN-TYPE denotes the type of the object returned by the method
     37      ARGUMENT-TYPES is a list of parameters to the method
     38     
     39        The types are either strings naming fully qualified java classes or Lisp keywords referring to
     40        primitive types (:void, :int, etc.).
     41
     42     FUNCTION is a Lisp function of minimum arity (1+ (length
     43     argument-types)). The instance (`this') is passed as the first
     44     argument.
    3545
    3646   Field definitions are lists of the form (field-name type &key modifiers annotations)."
     
    7484    (finish-output stream)
    7585    #+test-record-generated-class-file
    76     (with-open-file (f (format nil "~A.class" class-name) :direction :output :element-type '(signed-byte 8))
    77       (write-sequence (java::list-from-jarray (sys::%get-output-stream-bytes stream)) f))
     86    (let ((filename (merge-pathnames (format nil "~A.class" class-name))))
     87      (with-open-file (f filename :direction :output :element-type '(signed-byte 8))
     88        (write-sequence (java::list-from-jarray (sys::%get-output-stream-bytes stream)) f))
     89      (format *standard-output* "~&Wrote class file ~A.~%" filename))
    7890    (values class-file method-implementation-fields)))
    7991
Note: See TracChangeset for help on using the changeset viewer.