Changeset 4546
- Timestamp:
- 10/26/03 18:55:35 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/j/src/org/armedbear/lisp/Lisp.java
r4540 r4546 3 3 * 4 4 * Copyright (C) 2002-2003 Peter Graves 5 * $Id: Lisp.java,v 1.1 69 2003-10-25 21:53:57piso Exp $5 * $Id: Lisp.java,v 1.170 2003-10-26 18:55:35 piso Exp $ 6 6 * 7 7 * This program is free software; you can redistribute it and/or … … 248 248 } 249 249 if (obj instanceof SpecialOperator) 250 obj = Primitives.get((Symbol)car, 251 Symbol.MACROEXPAND_MACRO,NIL);250 obj = Primitives.get((Symbol)car, Symbol.MACROEXPAND_MACRO, 251 NIL); 252 252 if (obj instanceof MacroObject) { 253 253 LispObject expander = ((MacroObject)obj).getExpander(); … … 259 259 return results[0]; 260 260 } 261 } 262 } else if (form instanceof Symbol) { 263 Symbol symbol = (Symbol) form; 264 LispObject obj = null; 265 if (symbol.isSpecialVariable()) 266 obj = thread.lookupSpecial(symbol); 267 else 268 obj = env.lookup(symbol); 269 if (obj == null) 270 obj = symbol.getSymbolValue(); 271 if (obj instanceof SymbolMacro) { 272 results[0] = ((SymbolMacro)obj).getExpansion(); 273 results[1] = T; 274 thread.setValues(results); 275 return results[0]; 261 276 } 262 277 }
Note: See TracChangeset
for help on using the changeset viewer.