[re]-merged in Brians stuff
[org.ibex.core.git] / src / org / ibex / util / LineReader.java
diff --git a/src/org/ibex/util/LineReader.java b/src/org/ibex/util/LineReader.java
deleted file mode 100644 (file)
index 429c218..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.ibex.util;
-import java.io.*;
-
-public class LineReader {
-
-    private int MAXBUF = 1024 * 16;
-    char[] buf = new char[MAXBUF];
-    int buflen = 0;
-    Reader r;
-    Vec pushback = new Vec();
-
-    public LineReader(Reader r) { this.r = r; }
-
-    public void pushback(String s) { pushback.push(s); }
-
-    public String readLine() throws IOException {
-        while(true) {
-            if (pushback.size() > 0) return (String)pushback.pop();
-            for(int i=0; i<buflen; i++) {
-                if (buf[i] == '\n') {
-                    String ret;
-                    if (buf[i-1] == '\r') ret = new String(buf, 0, i-1);
-                    else ret = new String(buf, 0, i);
-                    System.arraycopy(buf, i+1, buf, 0, buflen - (i+1));
-                    buflen -= i+1;
-                    return ret;
-                }
-            }
-           if (buflen == MAXBUF) {
-               char[] buf2 = new char[MAXBUF*2];
-               System.arraycopy(buf, 0, buf2, 0, buflen);
-               buf = buf2;
-               MAXBUF *= 2;
-           }
-            int numread = r.read(buf, buflen, MAXBUF - buflen);
-            if (numread == -1) {
-                if (buflen == 0) return null;
-                String ret = new String(buf, 0, buflen);
-                buflen = 0;
-                return ret;
-            } else {
-                buflen += numread;
-            }
-        }
-    }
-}