Changeset 4111
- Timestamp:
- 09/28/03 19:34:28 (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/j/src/org/armedbear/lisp/StandardClass.java
r4104 r4111 3 3 * 4 4 * Copyright (C) 2003 Peter Graves 5 * $Id: StandardClass.java,v 1. 5 2003-09-28 18:32:16piso Exp $5 * $Id: StandardClass.java,v 1.6 2003-09-28 19:34:28 piso Exp $ 6 6 * 7 7 * This program is free software; you can redistribute it and/or … … 56 56 } 57 57 58 private static final Primitive MAKE_INSTANCE_STANDARD_CLASS = 59 new Primitive("make-instance-standard-class", PACKAGE_SYS, false) 58 // ### make-instance-standard-class 59 // make-instance-standard-class name all-keys => class 60 private static final Primitive2 MAKE_INSTANCE_STANDARD_CLASS = 61 new Primitive2("make-instance-standard-class", PACKAGE_SYS, false) 60 62 { 61 public LispObject execute(LispObject[] args) throws ConditionThrowable 63 public LispObject execute(LispObject first, LispObject second) 64 throws ConditionThrowable 62 65 { 63 if (args.length < 1) 64 throw new ConditionThrowable(new WrongNumberOfArgumentsException(this)); 65 Symbol symbol = checkSymbol(args[0]); 66 return new StandardClass(symbol, NIL); 66 Symbol symbol = checkSymbol(first); 67 LispObject directSuperclasses = NIL; 68 LispObject allKeys = second; 69 while (allKeys != NIL) { 70 LispObject key = allKeys.car(); 71 LispObject value = allKeys.cadr(); 72 if (key == Keyword.DIRECT_SUPERCLASSES) 73 directSuperclasses = value; 74 allKeys = allKeys.cddr(); 75 } 76 return new StandardClass(symbol, directSuperclasses); 67 77 } 68 78 };
Note: See TracChangeset
for help on using the changeset viewer.