Permalink
Browse files

Fix XCVB build.

  • Loading branch information...
1 parent a815f79 commit 13c1ee35c18def0fc91c945e3c7d4af6593b4711 @fare committed Sep 18, 2012
Showing with 17 additions and 17 deletions.
  1. +15 −13 interface/interface.lisp
  2. +1 −1 transform/classified.lisp
  3. +1 −3 transform/classify.lisp
View
@@ -197,19 +197,21 @@
(destructuring-bind (formals &body body)
(or (cdr parametric)
'(() (make-interface)))
- `((define-memo-function
- (,interface
- :normalization
- #'(lambda (make-interface &rest arguments)
- (flet ((make-interface (&rest arguments)
- (apply make-interface arguments)))
- (apply #'(lambda ,formals
- (block ,interface
- ,@body))
- arguments))))
- (&rest arguments)
- (apply 'make-instance ',interface arguments)))))
- ,@(when singleton `((defvar ,interface (,interface))))
+ `((eval-when (:compile-toplevel :load-toplevel :execute)
+ (define-memo-function
+ (,interface
+ :normalization
+ #'(lambda (make-interface &rest arguments)
+ (flet ((make-interface (&rest arguments)
+ (apply make-interface arguments)))
+ (apply #'(lambda ,formals
+ (block ,interface
+ ,@body))
+ arguments))))
+ (&rest arguments)
+ (apply 'make-instance ',interface arguments))))))
+ ,@(when singleton `((eval-when (:compile-toplevel :load-toplevel :execute)
+ (defvar ,interface (,interface)))))
,@(loop :for (() . gf) :in gfs :collect
`(define-interface-generic ,interface ,@gf))
,@(when methods
@@ -1,7 +1,7 @@
;;; -*- Mode: Lisp ; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;;;; From Interfaces to Classes: Examples
-#+xcvb (module (:depends-on ("transform/classify" "pure/map-interface")))
+#+xcvb (module (:depends-on ("transform/classify" "pure/map-interface" "stateful/tree-interface")))
(defpackage :classified
(:use :xcvb-utils :cl)
View
@@ -12,9 +12,7 @@
(defclass object-box (box!)
((interface :reader class-interface)))
-(defmacro define-classified-method (&rest args)
- (apply '%define-classified-method args))
-(defun %define-classified-method
+(defmacro define-classified-method
(class interface class-gf interface-gf &key
interface-argument
(extract-interface (first (ensure-list interface-argument)))

0 comments on commit 13c1ee3

Please sign in to comment.