;;;; in Text, HTML, and XML formats. This includes hyperlinking
;;;; capability and sub-objects.
;;;;
-;;;; $Id: mop.lisp,v 1.25 2003/03/29 07:42:22 kevin Exp $
+;;;; $Id: mop.lisp,v 1.26 2003/03/29 13:57:07 kevin Exp $
;;;;
;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg
;;;;
(setf (slot-value ,the-instance ,the-slot-name)
(,reader ,@keys)))))
-
-(defparameter *queued-definitions-pathname*
- (make-pathname :directory '(:absolute "tmp")
- :name (format nil "hyperobject-def-~d" (get-universal-time))
- :type "lisp"))
-(defparameter *queued-definitions-stream* nil)
-
-(defun add-definition (def)
- (unless *queued-definitions-stream*
- (setq *queued-definitions-stream* (open *queued-definitions-pathname*
- :direction :output
- :if-exists :supersede)))
- (format *queued-definitions-stream* "~W~%" def))
-
-(defun process-queued-definitions ()
- (when *queued-definitions-stream*
- (close *queued-definitions-stream*)
- (setq *queued-definitions-stream* nil)
- (compile-file *queued-definitions-pathname*)
- (load (compile-file-pathname *queued-definitions-pathname*))
- ;; (delete-file *queued-definitions-pathname*)
- ;; (delete-file (compile-file-pathname *queued-definitions-pathname*))
- ))
-
(defun finalize-subobjects (cl)
"Process class subobjects slot"
(setf (subobjects cl)
nil
(cdr subobj-def)))))
(unless (eq (lookup subobject) t)
- (add-definition
+ (eval
`(hyperobject::def-lazy-reader ,(name-class subobject)
,(name-slot subobject) ,(lookup subobject)
,@(lookup-keys subobject))))