1 21 22 package org.armedbear.lisp; 23 24 public final class SimpleTypeError extends TypeError 25 { 26 public SimpleTypeError(LispObject initArgs) throws ConditionThrowable 27 { 28 super(initArgs); 29 } 30 31 public LispObject typeOf() 32 { 33 return Symbol.SIMPLE_TYPE_ERROR; 34 } 35 36 public LispClass classOf() 37 { 38 return BuiltInClass.SIMPLE_TYPE_ERROR; 39 } 40 41 public LispObject typep(LispObject type) throws ConditionThrowable 42 { 43 if (type == Symbol.SIMPLE_TYPE_ERROR) 44 return T; 45 if (type == BuiltInClass.SIMPLE_TYPE_ERROR) 46 return T; 47 if (type == Symbol.SIMPLE_CONDITION) 48 return T; 49 if (type == BuiltInClass.SIMPLE_CONDITION) 50 return T; 51 return super.typep(type); 52 } 53 54 public String getMessage() 55 { 56 try { 57 LispObject formatControl = getFormatControl(); 58 if (formatControl != NIL) { 59 LispObject formatArguments = getFormatArguments(); 60 if (formatArguments != NIL) { 61 LispObject result = 63 Primitives.APPLY.execute(Symbol.FORMAT, 64 Primitives.APPEND.execute(list2(NIL, 65 formatControl), 66 formatArguments)); 67 return result.getStringValue(); 68 } 69 } 70 if (datum != null && expectedType != null) { 71 StringBuffer sb = new StringBuffer ("The value "); 72 sb.append(String.valueOf(datum)); 73 sb.append(" is not of type "); 74 sb.append(String.valueOf(expectedType)); 75 sb.append('.'); 76 return sb.toString(); 77 } 78 } 79 catch (Throwable t) {} 80 return null; 81 } 82 } 83 | Popular Tags |