Wed Dec 31 01:57:14 UTC 2008 Luis Oliveira loliveira@common-lisp.net * Experimental DEFCSTRUCT feature: accessors.
CFFI> (macroexpand-1 '(defcstruct (foo :conc-name foo-) (a :int))) ;;; ... (defun foo-a (pointer-to-foo) (foreign-slot-value pointer-to-foo 'foo 'a)) (defun (setf foo-a) (value pointer-to-foo) (foreign-slot-set value pointer-to-foo 'foo 'a)) ;;; ...
M ./src/types.lisp -8 +26
Wed Dec 31 01:51:45 UTC 2008 Luis Oliveira loliveira@common-lisp.net * Improvements to the :ARRAY type.
- Got rid of the :AUTO-ARRAY type. Add translators to :ARRAY directly instead. - Make the :ARRAY type aggregate. This way it can be used inside structures as an alternative to the :COUNT slot option. - Add TRANSLATE-AGGREGATE-TO-FOREIGN method that lets us do (setf (foreign-slot-value ptr 'struct 'slot-name) #(1 2 3))
M ./src/types.lisp -16 +30
Wed Dec 31 01:48:50 UTC 2008 Luis Oliveira loliveira@common-lisp.net * Apply translators to FOREIGN-SLOT-VALUE on aggregate slots
Implemented a new generic function TRANSLATE-AGGREGATE-TO-FOREIGN to support (SETF FOREIGN-SLOT-VALUE) for aggregate slots.
M ./src/early-types.lisp +4 M ./src/types.lisp -16 +21
Wed Dec 31 00:50:38 UTC 2008 Luis Oliveira loliveira@common-lisp.net * Add note about FREE-TRANSLATED-OBJECT's PARAM argument.
M ./src/early-types.lisp +3
An updated tarball of CFFI's source can be downloaded here: http://common-lisp.net/project/cffi/tarballs/cffi-081231.tar.gz
Darcsweb URL: http://common-lisp.net/cgi-bin/darcsweb/darcsweb.cgi?r=cffi-cffi;a=summary