Changeset 4165


Ignore:
Timestamp:
10/01/03 22:56:43 (20 years ago)
Author:
piso
Message:

FUNCTION: support (defun (setf ...) ...) functions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/Primitives.java

    r4163 r4165  
    33 *
    44 * Copyright (C) 2002-2003 Peter Graves
    5  * $Id: Primitives.java,v 1.456 2003-10-01 21:29:45 piso Exp $
     5 * $Id: Primitives.java,v 1.457 2003-10-01 22:56:43 piso Exp $
    66 *
    77 * This program is free software; you can redistribute it and/or
     
    30503050    // ### function
    30513051    private static final SpecialOperator FUNCTION =
    3052         new SpecialOperator("function") {
     3052        new SpecialOperator("function")
     3053    {
    30533054        public LispObject execute(LispObject args, Environment env)
    30543055            throws ConditionThrowable
     
    30693070                if (arg.car() == Symbol.LAMBDA)
    30703071                    return new Closure(arg.cadr(), arg.cddr(), env);
     3072                if (arg.car() == Symbol.SETF) {
     3073                    LispObject f = get(checkSymbol(arg.cadr()),
     3074                                       PACKAGE_SYS.intern("SETF-FUNCTION"));
     3075                    if (f instanceof Function)
     3076                        return f;
     3077                }
    30713078            }
    30723079            throw new ConditionThrowable(new UndefinedFunction(arg));
Note: See TracChangeset for help on using the changeset viewer.