# A version of the naive Nit interpreter for PNaCl.
module pnacl_nit
-import interpreter::naive_interpreter
-import interpreter::debugger
+import nitc::interpreter::naive_interpreter
+import nitc::interpreter::debugger
import pnacl
-intrude import toolcontext
-intrude import loader
-intrude import standard::file
+intrude import nitc::toolcontext
+intrude import nitc::loader
+intrude import core::file
# We redefine exit to start a new thread before killing the one that called exit.
redef fun exit(exit_value: Int)
end
end
-# We have to redef some IFStream methods because we don't use NativeFiles anymore.
-redef class IFStream
+# We have to redef some FileReader methods because we don't use NativeFiles anymore.
+redef class FileReader
# Looks in the 'files' HashMap.
redef init open(path: String)
self.path = path
var file = sys.files[path]
prepare_buffer(file.length)
- _buffer.append(file)
+ path.copy_to_native(_buffer, file.length, 0, 0)
end
redef fun close
redef fun fill_buffer
do
- _buffer.clear
+ buffer_reset
end_reached = true
end