blob: 2bfb281e681141fcdcddcfb61fc096786be1cd23 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
;; Copyright (c) Eduardo Julian. All rights reserved.
;; This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
;; If a copy of the MPL was not distributed with this file,
;; You can obtain one at http://mozilla.org/MPL/2.0/.
(ns leiningen.luxc.repl
(:require [leiningen.core.classpath :as classpath]
[leiningen.luxc.utils :as &utils])
(:import (java.io InputStreamReader
BufferedReader
PrintStream)))
(defn repl [project]
(println (&utils/repl-path project (:source-paths project)))
;; (let [process (.exec (Runtime/getRuntime) (&utils/repl-path project (:source-paths project)))]
;; (with-open [std-in (->> System/in (new InputStreamReader) (new BufferedReader))
;; process-in (->> process .getOutputStream (new PrintStream))
;; process-out (->> process .getInputStream (new InputStreamReader) (new BufferedReader))
;; process-err (->> process .getErrorStream (new InputStreamReader) (new BufferedReader))]
;; (loop []
;; (do (loop []
;; (when (.ready process-out)
;; (println (.readLine process-out))
;; (recur)))
;; (loop [had-error? false]
;; (if (.ready process-out)
;; (do (println (.readLine process-err))
;; (recur true))
;; (when had-error?
;; (System/exit 1))))
;; (when-let [input (.readLine std-in)]
;; (do (.println process-in input)
;; (recur)))))
;; ))
)
|