X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=base%2Floop-extension.lisp;h=a78086baf5adce1e12476b1959512ad61284251f;hp=f8129b53cf527d5438ccf20bdb4e1245a38d8bd9;hb=7e20a5285824bbbd2aa6fae61da73465ed2e8557;hpb=1b5725b57eb64c5e3a688f805f46d5f66e11db7b diff --git a/base/loop-extension.lisp b/base/loop-extension.lisp index f8129b5..a78086b 100644 --- a/base/loop-extension.lisp +++ b/base/loop-extension.lisp @@ -2,22 +2,16 @@ ;;;; ************************************************************************* ;;;; FILE IDENTIFICATION ;;;; -;;;; Name: loop-extension.lisp -;;;; Purpose: Extensions to the Loop macro for CMUCL -;;;; Programmer: Pierre R. Mai +;;;; Name: loop-extension.lisp +;;;; Purpose: Extensions to the Loop macro for CLSQL ;;;; -;;;; Copyright (c) 1999-2001 Pierre R. Mai +;;;; Copyright (c) 2001-2004 Kevin Rosenberg and (c) 1999-2001 Pierre R. Mai ;;;; ;;;; $Id$ -;;;; -;;;; The functions in this file were orignally distributed in the -;;;; MaiSQL package in the file sql/sql.cl ;;;; ************************************************************************* (in-package #:cl-user) -;;;; MIT-LOOP extension - #+(or allegro sbcl) (eval-when (:compile-toplevel :load-toplevel :execute) (defpackage #:ansi-loop @@ -56,6 +50,10 @@ (unless from-phrase (setq from-phrase '(clsql-base:*default-database*))) (cond + ;; Object query resulting in a list of returned object instances + ((consp in-phrase) + (error "object query not yet supported")) + ((consp variable) (let ((query-var (ansi-loop::loop-gentemp 'loop-record-)) (db-var (ansi-loop::loop-gentemp 'loop-record-database-)) @@ -147,7 +145,12 @@ (error "Missing OF or IN iteration path.")) (unless from-phrase (setq from-phrase '(clsql-base:*default-database*))) + (cond + ;; Object query resulting in a list of returned object instances + ((consp in-phrase) + (error "Object query not yet supported.")) + ((consp iter-var) (let ((query-var (gensym "LOOP-RECORD-")) (db-var (gensym "LOOP-RECORD-DATABASE-"))