summaryrefslogtreecommitdiff
path: root/libdeno/file_util.cc
diff options
context:
space:
mode:
authorYoshiya Hinosawa <stibium121@gmail.com>2018-08-19 16:44:10 +0900
committerRyan Dahl <ry@tinyclouds.org>2018-08-19 11:27:47 -0400
commitaaabc853e84a03f72208c0e80634bd986c3ca4e2 (patch)
tree24cb4daf07c7b52b9260e041289ab2e79f25f5a8 /libdeno/file_util.cc
parent146bc93b81ef1775a3a22784c74cbf0c8bbd1c9e (diff)
chore: move libdeno files to //libdeno/
Diffstat (limited to 'libdeno/file_util.cc')
-rw-r--r--libdeno/file_util.cc31
1 files changed, 31 insertions, 0 deletions
diff --git a/libdeno/file_util.cc b/libdeno/file_util.cc
new file mode 100644
index 000000000..a0cae5f58
--- /dev/null
+++ b/libdeno/file_util.cc
@@ -0,0 +1,31 @@
+// Copyright 2018 the Deno authors. All rights reserved. MIT license.
+#include <inttypes.h>
+#include <stdio.h>
+#include <fstream>
+#include <iterator>
+#include <string>
+
+#include "file_util.h"
+
+namespace deno {
+
+bool ReadFileToString(const char* fn, std::string* contents) {
+ std::ifstream file(fn, std::ios::binary);
+ if (file.fail()) {
+ return false;
+ }
+ contents->assign(std::istreambuf_iterator<char>{file}, {});
+ return !file.fail();
+}
+
+std::string Basename(std::string const& filename) {
+ for (auto it = filename.rbegin(); it != filename.rend(); ++it) {
+ char ch = *it;
+ if (ch == '\\' || ch == '/') {
+ return std::string(it.base(), filename.end());
+ }
+ }
+ return filename;
+}
+
+} // namespace deno