aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/luxc/io.jvm.lux
diff options
context:
space:
mode:
Diffstat (limited to 'new-luxc/source/luxc/io.jvm.lux')
-rw-r--r--new-luxc/source/luxc/io.jvm.lux80
1 files changed, 40 insertions, 40 deletions
diff --git a/new-luxc/source/luxc/io.jvm.lux b/new-luxc/source/luxc/io.jvm.lux
index 21c3da256..d0e09a5b9 100644
--- a/new-luxc/source/luxc/io.jvm.lux
+++ b/new-luxc/source/luxc/io.jvm.lux
@@ -1,4 +1,4 @@
-(;module:
+(.module:
lux
(lux (control monad
["ex" exception #+ exception:])
@@ -13,7 +13,7 @@
(world [file #+ File]
[blob #+ Blob])))
-(host;import java.lang.String
+(host.import java/lang/String
(new [(Array byte)]))
(def: host-extension Text ".jvm")
@@ -23,38 +23,38 @@
(exception: #export Module-Not-Found)
(exception: #export Could-Not-Read-All-Data)
-(host;import #long java.io.File
+(host.import #long java/io/File
(new [String])
(exists [] #io #try boolean)
(mkdir [] #io #try boolean)
(delete [] #io #try boolean)
(length [] #io #try long)
- (listFiles [] #io #try (Array java.io.File))
+ (listFiles [] #io #try (Array java/io/File))
(getAbsolutePath [] #io #try String)
(isFile [] #io #try boolean)
(isDirectory [] #io #try boolean))
-(host;import java.lang.AutoCloseable
+(host.import java/lang/AutoCloseable
(close [] #io #try void))
-(host;import java.io.InputStream
+(host.import java/io/InputStream
(read [(Array byte)] #io #try int))
-(host;import java.io.FileInputStream
- (new [java.io.File] #io #try))
+(host.import java/io/FileInputStream
+ (new [java/io/File] #io #try))
(def: file-exists?
(-> File (Process Bool))
- (|>. java.io.File.new (java.io.File.exists [])))
+ (|>> java/io/File::new (java/io/File::exists [])))
(def: (find-source path dirs)
(-> Text (List File) (Process [Text File]))
(case dirs
- #;Nil
- (io;fail (File-Not-Found path))
+ #.Nil
+ (io.fail (File-Not-Found path))
- (#;Cons dir dirs')
- (do io;Monad<Process>
+ (#.Cons dir dirs')
+ (do io.Monad<Process>
[#let [file (format dir "/" path)]
? (file-exists? file)]
(if ?
@@ -63,44 +63,44 @@
(def: (either left right)
(All [a] (-> (Process a) (Process a) (Process a)))
- (do io;Monad<IO>
+ (do io.Monad<IO>
[?output left]
(case ?output
- (#e;Success output)
- (wrap (#e;Success output))
+ (#e.Success output)
+ (wrap (#e.Success output))
- (#e;Error error)
+ (#e.Error error)
right)))
(def: #export (read-file file)
(-> File (Process Blob))
- (do io;Monad<Process>
- [#let [file' (java.io.File.new file)]
- size (java.io.File.length [] file')
- #let [data (blob;create (int-to-nat size))]
- stream (FileInputStream.new [file'])
- bytes-read (InputStream.read [data] stream)
- _ (AutoCloseable.close [] stream)]
- (if (i.= size bytes-read)
+ (do io.Monad<Process>
+ [#let [file' (java/io/File::new file)]
+ size (java/io/File::length [] file')
+ #let [data (blob.create (int-to-nat size))]
+ stream (FileInputStream::new [file'])
+ bytes-read (InputStream::read [data] stream)
+ _ (AutoCloseable::close [] stream)]
+ (if (i/= size bytes-read)
(wrap data)
- (io;fail (Could-Not-Read-All-Data file)))))
+ (io.fail (Could-Not-Read-All-Data file)))))
(def: #export (read-module dirs name)
(-> (List File) Text (Process [File Text]))
(let [host-path (format name host-extension lux-extension)
lux-path (format name lux-extension)]
- (do io;Monad<Process>
+ (do io.Monad<Process>
[[path file] (: (Process [Text File])
($_ either
(find-source host-path dirs)
(find-source lux-path dirs)
- (io;fail (Module-Not-Found name))))
+ (io.fail (Module-Not-Found name))))
blob (read-file file)]
- (wrap [path (String.new blob)]))))
+ (wrap [path (String::new blob)]))))
(def: #export (write-module name descriptor)
- (-> Text Text (T;Task Unit))
- (T;fail "'write-module' is undefined."))
+ (-> Text Text (T.Task Unit))
+ (T.fail "'write-module' is undefined."))
(def: (platform-target root-target)
(-> File File)
@@ -108,20 +108,20 @@
"JS" "js"})))
(def: #export (prepare-target target-dir)
- (-> File (T;Task Unit))
- (do T;Monad<Task>
- [_ (file;make-dir target-dir)
- _ (file;make-dir (platform-target target-dir))]
+ (-> File (T.Task Unit))
+ (do T.Monad<Task>
+ [_ (file.make-dir target-dir)
+ _ (file.make-dir (platform-target target-dir))]
(wrap [])))
(def: #export (prepare-module target-dir module-name)
- (-> File Text (T;Task Unit))
- (do T;Monad<Task>
- [_ (file;make-dir (format (platform-target target-dir) "/" module-name))]
+ (-> File Text (T.Task Unit))
+ (do T.Monad<Task>
+ [_ (file.make-dir (format (platform-target target-dir) "/" module-name))]
(wrap [])))
(def: #export (write-file target-dir file-name content)
- (-> File Text Blob (T;Task Unit))
+ (-> File Text Blob (T.Task Unit))
(|> file-name
(format (platform-target target-dir) "/")
- (file;write content)))
+ (file.write content)))