diff src/luan/lib/PickleClient.java @ 160:138b9baee80b

include IoLib.LuanFile fns in OsLib.LuanFile; improve PickleClient error output; git-svn-id: https://luan-java.googlecode.com/svn/trunk@161 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Thu, 19 Jun 2014 07:02:16 +0000
parents 0517a4a7fcc5
children
line wrap: on
line diff
--- a/src/luan/lib/PickleClient.java	Thu Jun 19 04:40:12 2014 +0000
+++ b/src/luan/lib/PickleClient.java	Thu Jun 19 07:02:16 2014 +0000
@@ -57,7 +57,7 @@
 				msg + "\n"
 				+ "in:\n"
 				+ "------------------\n"
-				+ src + "\n"
+				+ formatCode(src) + "\n"
 				+ "------------------\n"
 			);
 		}
@@ -81,4 +81,26 @@
 		return tbl;
 	}
 
+
+	public static String formatCode(String s) {
+		StringBuilder buf = new StringBuilder();
+		int line = 1;
+		int i = 0;
+		int i2 = 0;
+		while( i2 != -1 ) {
+			buf.append( line++ );
+			buf.append( '\t' );
+			i2 = s.indexOf('\n',i);
+			String lineStr = i2 == -1 ? s.substring(i) : s.substring(i,i2+1);
+			int j;
+			for( j=0; j<lineStr.length() && lineStr.charAt(j)=='\t'; j++ ) {
+				buf.append( "    " );
+			}
+			buf.append( lineStr.substring(j) );
+			i = i2 + 1;
+		}
+		return buf.toString();
+	}
+
+
 }