case mode fixes for allegrocl module
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6070 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
53ed088b56
commit
440a4592e3
3 changed files with 15 additions and 6 deletions
|
|
@ -1,6 +1,12 @@
|
||||||
Version 1.3.22 (in progress)
|
Version 1.3.22 (in progress)
|
||||||
==================================
|
==================================
|
||||||
|
|
||||||
|
08/03/2004: Ahmon Dancy <dancy@dancy>
|
||||||
|
|
||||||
|
[allegrocl] Additional case mode fixes. Also, make sure
|
||||||
|
foreign types are exported.
|
||||||
|
|
||||||
|
|
||||||
07/24/2004: mkoeppe
|
07/24/2004: mkoeppe
|
||||||
[Guile] In -scm mode, SWIG modules now exchange their pointer type
|
[Guile] In -scm mode, SWIG modules now exchange their pointer type
|
||||||
information via the Guile interpreter. It is no longer necessary to build a
|
information via the Guile interpreter. It is no longer necessary to build a
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
(defun identifier-convert-null (id &key type)
|
(defun identifier-convert-null (id &key type)
|
||||||
(declare (ignore type))
|
(declare (ignore type))
|
||||||
(intern id))
|
(read-from-string id))
|
||||||
|
|
||||||
(defun identifier-convert-lispify (cname &key type)
|
(defun identifier-convert-lispify (cname &key type)
|
||||||
(assert (stringp cname))
|
(assert (stringp cname))
|
||||||
|
|
@ -42,7 +42,7 @@
|
||||||
else
|
else
|
||||||
(push char res)
|
(push char res)
|
||||||
(setf lastcase :other)))
|
(setf lastcase :other)))
|
||||||
(intern (coerce (nreverse res) 'string))))
|
(read-from-string (coerce (nreverse res) 'string))))
|
||||||
|
|
||||||
(defmacro swig-defconstant (string value)
|
(defmacro swig-defconstant (string value)
|
||||||
(let ((symbol (funcall *swig-identifier-converter* string :type :constant)))
|
(let ((symbol (funcall *swig-identifier-converter* string :type :constant)))
|
||||||
|
|
@ -57,7 +57,11 @@
|
||||||
(ff:def-foreign-call (,symbol ,name) ,@rest)
|
(ff:def-foreign-call (,symbol ,name) ,@rest)
|
||||||
(export (quote ,symbol))))))
|
(export (quote ,symbol))))))
|
||||||
|
|
||||||
|
(defmacro swig-def-foreign-type (name &rest rest)
|
||||||
|
(let ((symbol (funcall *swig-identifier-converter* name :type :type)))
|
||||||
|
`(eval-when (compile load eval)
|
||||||
|
(ff:def-foreign-type ,symbol ,@rest)
|
||||||
|
(export (quote ,symbol)))))
|
||||||
|
|
||||||
) ;; eval-when
|
) ;; eval-when
|
||||||
%}
|
%}
|
||||||
|
|
|
||||||
|
|
@ -360,10 +360,9 @@ int ALLEGROCL :: classDeclaration(Node *n) {
|
||||||
Printf(stderr, " (name: %s)\n", name);
|
Printf(stderr, " (name: %s)\n", name);
|
||||||
SWIG_exit(EXIT_FAILURE);
|
SWIG_exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
Printf(f_cl,
|
Printf(f_cl,
|
||||||
"(ff:def-foreign-type #.(%s \"%s\" :type :type)\n (:struct\n",
|
"(swig-def-foreign-type \"%s\"\n (:struct\n",
|
||||||
identifier_converter,
|
|
||||||
name);
|
name);
|
||||||
|
|
||||||
for (c=firstChild(n); c; c=nextSibling(c)) {
|
for (c=firstChild(n); c; c=nextSibling(c)) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue