aboutsummaryrefslogtreecommitdiffstats
path: root/libdevcore
diff options
context:
space:
mode:
Diffstat (limited to 'libdevcore')
-rw-r--r--libdevcore/CommonIO.cpp20
-rw-r--r--libdevcore/CommonIO.h5
2 files changed, 21 insertions, 4 deletions
diff --git a/libdevcore/CommonIO.cpp b/libdevcore/CommonIO.cpp
index 5d47937b..8c7e08f6 100644
--- a/libdevcore/CommonIO.cpp
+++ b/libdevcore/CommonIO.cpp
@@ -39,7 +39,7 @@ namespace
{
template <typename _T>
-inline _T contentsGeneric(std::string const& _file)
+inline _T readFile(std::string const& _file)
{
_T ret;
size_t const c_elementSize = sizeof(typename _T::value_type);
@@ -61,9 +61,23 @@ inline _T contentsGeneric(std::string const& _file)
}
-string dev::contentsString(string const& _file)
+string dev::readFileAsString(string const& _file)
{
- return contentsGeneric<string>(_file);
+ return readFile<string>(_file);
+}
+
+string dev::readStandardInput()
+{
+ string ret;
+ while (!cin.eof())
+ {
+ string tmp;
+ // NOTE: this will read until EOF or NL
+ getline(cin, tmp);
+ ret.append(tmp);
+ ret.append("\n");
+ }
+ return ret;
}
void dev::writeFile(std::string const& _file, bytesConstRef _data, bool _writeDeleteRename)
diff --git a/libdevcore/CommonIO.h b/libdevcore/CommonIO.h
index d84362cf..33769ec3 100644
--- a/libdevcore/CommonIO.h
+++ b/libdevcore/CommonIO.h
@@ -32,7 +32,10 @@ namespace dev
/// Retrieve and returns the contents of the given file as a std::string.
/// If the file doesn't exist or isn't readable, returns an empty container / bytes.
-std::string contentsString(std::string const& _file);
+std::string readFileAsString(std::string const& _file);
+
+/// Retrieve and returns the contents of standard input (until EOF).
+std::string readStandardInput();
/// Write the given binary data into the given file, replacing the file if it pre-exists.
/// Throws exception on error.