Changeset 8298


Ignore:
Timestamp:
12/26/04 23:49:05 (17 years ago)
Author:
piso
Message:

DEFINE-SETF-EXPANDER THE

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/late-setf.lisp

    r7978 r8298  
    22;;;
    33;;; Copyright (C) 2003-2004 Peter Graves
    4 ;;; $Id: late-setf.lisp,v 1.6 2004-10-14 16:51:25 piso Exp $
     4;;; $Id: late-setf.lisp,v 1.7 2004-12-26 23:49:05 piso Exp $
    55;;;
    66;;; This program is free software; you can redistribute it and/or
     
    8484            `(apply #'(setf ,function) ,new-var ,@vars)
    8585            `(apply #',function ,@vars))))
     86
     87(define-setf-expander the (type place &environment env)
     88  (multiple-value-bind (temps subforms store-vars setter getter)
     89    (get-setf-expansion place env)
     90    (values temps subforms store-vars
     91            `(multiple-value-bind ,store-vars
     92               (the ,type (values ,@store-vars))
     93               ,setter)
     94            `(the ,type ,getter))))
Note: See TracChangeset for help on using the changeset viewer.