Ignore:
Timestamp:
05/21/10 22:54:55 (13 years ago)
Author:
astalla
Message:

Support for custom defclass options for user-defined metaclasses.
Introduced variable java:*classloader* which holds the classloader used by jclass and friends,
and primitives to create new classloaders and (untested) add new URLs to the classloader at runtime.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/java.lisp

    r12661 r12715  
    3535(require "PRINT-OBJECT")
    3636
     37(defvar *classloader* (get-default-classloader))
     38
     39(defun add-url-to-classpath (url &optional (classloader *classloader*))
     40  (jcall "addUrl" classloader url))
     41
     42(defun add-urls-to-classpath (&rest urls)
     43  (dolist (url urls)
     44    (add-url-to-classpath url)))
     45
    3746(defun jregister-handler (object event handler &key data count)
    3847  (%jregister-handler object event handler data count))
     
    191200        (setf (apply #'jarray-ref jarray (row-major-to-index dimensions i)) (row-major-aref array i))
    192201        (apply #'(setf jarray-ref) (row-major-aref array i) jarray (row-major-to-index dimensions i))))))
     202
     203(defun jnew-array-from-list (element-type list)
     204  (let ((jarray (jnew-array element-type (length list)))
     205  (i 0))
     206    (dolist (x list)
     207      (setf (jarray-ref jarray i) x
     208      i (1+ i)))
     209    jarray))
    193210
    194211(defun jclass-constructors (class)
Note: See TracChangeset for help on using the changeset viewer.