summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/boot.clj11
-rw-r--r--src/jvm/clojure/lang/LineNumberingPushbackReader.java5
2 files changed, 16 insertions, 0 deletions
diff --git a/src/boot.clj b/src/boot.clj
index 0ac2383b..891dabfd 100644
--- a/src/boot.clj
+++ b/src/boot.clj
@@ -1320,6 +1320,13 @@ make-proxy [classes method-map]
(. *out* (append \newline))
nil)
+(defn flush
+ "Flushes the output stream that is the current value of
+ *out*"
+ []
+ (. *out* (flush))
+ nil)
+
(defn prn
"Same as pr followed by (newline)"
[& more]
@@ -1353,6 +1360,10 @@ make-proxy [classes method-map]
([stream eof-error? eof-value recursive?]
(. clojure.lang.LispReader (read stream eof-error? eof-value recursive?))))
+(defn read-line
+ "Reads the next line from stream that is the current value of *in* ."
+ [] (. *in* (readLine)))
+
(defmacro with-open
"Evaluates body in a try expression with name bound to the value of
init, and a finally clause that calls (. name (close))."
diff --git a/src/jvm/clojure/lang/LineNumberingPushbackReader.java b/src/jvm/clojure/lang/LineNumberingPushbackReader.java
index 5b2bca06..652e3a30 100644
--- a/src/jvm/clojure/lang/LineNumberingPushbackReader.java
+++ b/src/jvm/clojure/lang/LineNumberingPushbackReader.java
@@ -13,6 +13,7 @@ package clojure.lang;
import java.io.PushbackReader;
import java.io.Reader;
import java.io.LineNumberReader;
+import java.io.IOException;
public class LineNumberingPushbackReader extends PushbackReader{
@@ -24,4 +25,8 @@ public LineNumberingPushbackReader(Reader r){
public int getLineNumber(){
return ((LineNumberReader) in).getLineNumber() + 1;
}
+
+public String readLine() throws IOException{
+ return ((LineNumberReader)in).readLine();
+}
}