From 7ec202d472b0afef446900dcc19736cd2adea17b Mon Sep 17 00:00:00 2001
From: Christoph Lehmann <christoph.lehmann@ufz.de>
Date: Tue, 1 Mar 2016 11:39:49 +0100
Subject: [PATCH] [BL] general converter of values to string

---
 BaseLib/StringTools.cpp | 5 +++++
 BaseLib/StringTools.h   | 9 +++++++++
 2 files changed, 14 insertions(+)

diff --git a/BaseLib/StringTools.cpp b/BaseLib/StringTools.cpp
index 43a0a06c2df..7a658c8b155 100644
--- a/BaseLib/StringTools.cpp
+++ b/BaseLib/StringTools.cpp
@@ -72,6 +72,11 @@ std::string padLeft(std::string const& str, int maxlen, char ch)
 	return ss.str();
 }
 
+std::string const& tostring(std::string const& value)
+{
+	return value;
+}
+
 } // end namespace BaseLib
 
 #ifdef MSVC
diff --git a/BaseLib/StringTools.h b/BaseLib/StringTools.h
index f339f4e30b9..413fa5168e6 100644
--- a/BaseLib/StringTools.h
+++ b/BaseLib/StringTools.h
@@ -70,6 +70,15 @@ void simplify(std::string &str);
  */
 std::string padLeft(std::string const& str, int maxlen, char ch=' ');
 
+
+//! Method for handling conversion to string uniformly across all types and std::string; see std::string overload below.
+template<typename T> std::string tostring(T const& value)
+{
+	return std::to_string(value);
+}
+//! \overload
+std::string const& tostring(std::string const& value);
+
 } // end namespace BaseLib
 
 #ifdef MSVC
-- 
GitLab