/** Returns a String representation of this Exception. */ public static Value __toString(Env env, @This ObjectValue value) { StringValue sb = new StringValue(); sb.append("ExceptionClass[" + value.getName() + "]\n"); sb.append(getMessage(env, value)); sb.append("\n"); sb.append(getTraceAsString(env, value)); sb.append("\n"); return sb; }
/** Returns the trace. */ public static Value getTraceAsString(Env env, @This Value obj) { Value trace = getTrace(env, obj); StringValue sb = new StringValue(); sb.append("<trace>"); Iterator<Value> iter = trace.getValueIterator(env); while (iter.hasNext()) { Value value = iter.next(); sb = sb.append('\n'); sb = sb.append(value.get(FILE)); sb = sb.append(':'); sb = sb.append(value.get(LINE)); sb = sb.append(": "); sb = sb.append(value.get(FUNCTION)); } return sb; }