chiark
/
gitweb
/
~mdw
/
clg
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Clearing stack allocated memory
[clg]
/
glib
/
genums.lisp
diff --git
a/glib/genums.lisp
b/glib/genums.lisp
index 14bff9a4f276ee06d9a510f8debd2a0d62efb683..6624332573c4cf01d0f5ac41a54476cee20d6058 100644
(file)
--- a/
glib/genums.lisp
+++ b/
glib/genums.lisp
@@
-20,7
+20,7
@@
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: genums.lisp,v 1.1
7 2006/02/06 18:12:19
espen Exp $
+;; $Id: genums.lisp,v 1.1
8 2006/02/19 22:25:31
espen Exp $
(in-package "GLIB")
(in-package "GLIB")
@@
-57,6
+57,9
@@
(defmethod to-alien-form (form (type (eql 'enum)) &rest args)
(t (error 'type-error :datum ,form :expected-type '(enum ,@args)))))
(t (error 'type-error :datum ,form :expected-type '(enum ,@args)))))
+(defmethod callback-from-alien-form (form (type (eql 'enum)) &rest args)
+ (apply #'from-alien-form form type args))
+
(defmethod from-alien-form (form (type (eql 'enum)) &rest args)
(declare (ignore type))
`(case ,form
(defmethod from-alien-form (form (type (eql 'enum)) &rest args)
(declare (ignore type))
`(case ,form
@@
-173,6
+176,9
@@
(defmethod to-alien-form (flags (type (eql 'flags)) &rest args)
(t (error 'type-error :datum ,flags
:expected-type '(,type ,@args)))))))
(t (error 'type-error :datum ,flags
:expected-type '(,type ,@args)))))))
+(defmethod callback-from-alien-form (form (type (eql 'flags)) &rest args)
+ (apply #'from-alien-form form type args))
+
(defmethod from-alien-form (value (type (eql 'flags)) &rest args)
(declare (ignore type))
`(loop
(defmethod from-alien-form (value (type (eql 'flags)) &rest args)
(declare (ignore type))
`(loop