Update of /project/rdnzl/cvsroot/RDNZL In directory clnet:/tmp/cvs-serv18676
Modified Files: CHANGELOG.txt adapter.lisp arrays.lisp container.lisp direct.lisp ffi.lisp import.lisp load.lisp packages.lisp port-acl.lisp port-ccl.lisp port-clisp.lisp port-ecl.lisp port-lw.lisp port-sbcl.lisp rdnzl.asd reader.lisp specials.lisp util.lisp Log Message: Sync with 10.1.2
--- /project/rdnzl/cvsroot/RDNZL/CHANGELOG.txt 2006/06/12 08:47:10 1.9 +++ /project/rdnzl/cvsroot/RDNZL/CHANGELOG.txt 2006/08/10 15:36:47 1.10 @@ -1,3 +1,11 @@ +Version 0.10.2 +2006-08-10 +More DSPEC definitions for LispWorks + +Version 0.10.1 +2006-08-10 +DSPEC definitions for LispWorks + Version 0.10.0 2006-06-12 ECL port (provided by Michael Goffioul) --- /project/rdnzl/cvsroot/RDNZL/adapter.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/adapter.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/adapter.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/adapter.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/arrays.lisp 2006/06/12 08:47:10 1.6 +++ /project/rdnzl/cvsroot/RDNZL/arrays.lisp 2006/08/10 15:36:47 1.7 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/arrays.lisp,v 1.6 2006/06/12 08:47:10 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/arrays.lisp,v 1.7 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/container.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/container.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/container.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/container.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/direct.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/direct.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/direct.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/direct.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
@@ -186,6 +186,10 @@ (or type-name (second (first args))) (loop for (arg-name nil) in args collect arg-name)))) + #+:lispworks + ;; record location of definition for IDE + (dspec:record-definition '(define-rdnzl-call ,lisp-name) + (dspec:location)) ',lisp-name))
(defun create-direct-call (lisp-name other-args) --- /project/rdnzl/cvsroot/RDNZL/ffi.lisp 2006/02/18 22:26:12 1.6 +++ /project/rdnzl/cvsroot/RDNZL/ffi.lisp 2006/08/10 15:36:47 1.7 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/ffi.lisp,v 1.6 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/ffi.lisp,v 1.7 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
@@ -39,9 +39,7 @@ "Like FFI-DEFINE-FUNCTION* but automatically creates the Lisp name from the C name. A name like "invokeMethod" is mapped to "%INVOKE-METHOD"." - `(ffi-define-function* (,(intern - (concatenate 'string "%" (mangle-name c-name)) - :rdnzl) + `(ffi-define-function* (,(make-lisp-name c-name) ,c-name) ,arg-list ,result-type)) --- /project/rdnzl/cvsroot/RDNZL/import.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/import.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/import.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/import.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/load.lisp 2006/06/12 08:47:10 1.6 +++ /project/rdnzl/cvsroot/RDNZL/load.lisp 2006/08/10 15:36:47 1.7 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/load.lisp,v 1.6 2006/06/12 08:47:10 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/load.lisp,v 1.7 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/packages.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/packages.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/packages.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/packages.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/port-acl.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/port-acl.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-acl.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-acl.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Charles A. Cox, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/port-ccl.lisp 2006/06/12 08:47:10 1.7 +++ /project/rdnzl/cvsroot/RDNZL/port-ccl.lisp 2006/08/10 15:36:47 1.8 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-ccl.lisp,v 1.7 2006/06/12 08:47:10 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-ccl.lisp,v 1.8 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/port-clisp.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/port-clisp.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-clisp.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-clisp.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Vasilis Margioulas, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/port-ecl.lisp 2006/06/12 08:47:10 1.1 +++ /project/rdnzl/cvsroot/RDNZL/port-ecl.lisp 2006/08/10 15:36:47 1.2 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-ecl.lisp,v 1.1 2006/06/12 08:47:10 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-ecl.lisp,v 1.2 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Vasilis Margioulas, Michael Goffioul, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/port-lw.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/port-lw.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-lw.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-lw.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
@@ -99,14 +99,14 @@ "Defines a Lisp function which can be called from C. ARG-LIST is a list of (NAME TYPE) pairs. All types are supposed to be symbols mappable by FFI-MAP-TYPE above." -`(fli:define-foreign-callable - (,(symbol-name c-name) :result-type ,(ffi-map-type result-type) - :calling-convention :cdecl) - ,(mapcar (lambda (name-and-type) - (destructuring-bind (name type) name-and-type - (list name (ffi-map-type type)))) - arg-list) - ,@body)) + `(fli:define-foreign-callable + (,(symbol-name c-name) :result-type ,(ffi-map-type result-type) + :calling-convention :cdecl) + ,(mapcar (lambda (name-and-type) + (destructuring-bind (name type) name-and-type + (list name (ffi-map-type type)))) + arg-list) + ,@body))
(defmacro ffi-get-call-by-ref-string (function object length-function) "Calls the foreign function FUNCTION. FUNCTION is supposed to call @@ -211,3 +211,16 @@ (defun full-gc () "Invokes a full garbage collection." (hcl:mark-and-sweep 3)) + +;; help the LispWorks IDE to find definitions +(dspec:define-form-parser ffi-define-function (c-name) + `(,ffi-define-function ,(make-lisp-name c-name))) + +(dspec:define-dspec-alias ffi-define-function (name) + `(fli:define-foreign-function ,name)) + +(dspec:define-form-parser define-rdnzl-call (name) + `(,define-rdnzl-call ,name)) + +(dspec:define-dspec-alias define-rdnzl-call (name) + `(defun ,name)) --- /project/rdnzl/cvsroot/RDNZL/port-sbcl.lisp 2006/06/12 08:47:10 1.5 +++ /project/rdnzl/cvsroot/RDNZL/port-sbcl.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-sbcl.lisp,v 1.5 2006/06/12 08:47:10 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/port-sbcl.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/rdnzl.asd 2006/06/12 08:47:10 1.8 +++ /project/rdnzl/cvsroot/RDNZL/rdnzl.asd 2006/08/10 15:36:47 1.9 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/rdnzl.asd,v 1.8 2006/06/12 08:47:10 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/rdnzl.asd,v 1.9 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004, Dr. Edmund Weitz. All rights reserved.
@@ -39,7 +39,7 @@
(defsystem #:rdnzl :serial t - :version "0.9.5" + :version "0.10.2" :components ((:file "packages") (:file "specials") (:file "util") --- /project/rdnzl/cvsroot/RDNZL/reader.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/reader.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/reader.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/reader.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
--- /project/rdnzl/cvsroot/RDNZL/specials.lisp 2006/02/18 22:26:12 1.5 +++ /project/rdnzl/cvsroot/RDNZL/specials.lisp 2006/08/10 15:36:47 1.6 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/specials.lisp,v 1.5 2006/02/18 22:26:12 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/specials.lisp,v 1.6 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
@@ -95,6 +95,7 @@ ;; stuff for Nikodemus Siivola's HYPERDOC ;; see http://common-lisp.net/project/hyperdoc/ ;; and http://www.cliki.net/hyperdoc +;; also used by LW-ADD-ONS
(defvar *hyperdoc-base-uri* "http://weitz.de/rdnzl/")
--- /project/rdnzl/cvsroot/RDNZL/util.lisp 2006/05/24 21:49:09 1.6 +++ /project/rdnzl/cvsroot/RDNZL/util.lisp 2006/08/10 15:36:47 1.7 @@ -1,5 +1,5 @@ ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: RDNZL; Base: 10 -*- -;;; $Header: /project/rdnzl/cvsroot/RDNZL/util.lisp,v 1.6 2006/05/24 21:49:09 eweitz Exp $ +;;; $Header: /project/rdnzl/cvsroot/RDNZL/util.lisp,v 1.7 2006/08/10 15:36:47 eweitz Exp $
;;; Copyright (c) 2004-2006, Dr. Edmund Weitz. All rights reserved.
@@ -165,6 +165,10 @@ do (write-char #- out) do (write-char (char-downcase char) out))))))
+(defun make-lisp-name (c-name) + "Makes a Lisp name (a symbol in the RDNZL package) from a C name." + (intern (concatenate 'string "%" (mangle-name c-name)) :rdnzl)) + (defun unmangle-name* (string) "STRING is assumed to be a string consisting solely of single-case letters and hyphens. This function will return a