Froj/src/com/jsaasta/froj/stdlib/FileReader.java
Jesper Saastamoinen 4212bec61f Added FileReader to stdlib
Added FileReader to stdlib to read in files and return it as a string
2024-09-17 14:48:10 +02:00

29 lines
783 B
Java

package com.jsaasta.froj.stdlib;
import com.jsaasta.froj.Froj;
import com.jsaasta.froj.FrojCallable;
import com.jsaasta.froj.Interpreter;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
public class FileReader implements FrojCallable {
@Override
public int arity() {
return 1;
}
@Override
public Object call(Interpreter interpreter, List<Object> arguments) {
try {
byte[] bytes = Files.readAllBytes(Paths.get((String) arguments.get(0)));
return new String(bytes, Charset.defaultCharset());
} catch (IOException e) {
throw new StdlibRuntimeError("Couldn't find file: " + arguments.get(0));
}
}
}