OSDN Git Service

* Add a std::ostream inserter for sys::Path
authorReid Spencer <rspencer@reidspencer.com>
Mon, 13 Dec 2004 06:57:15 +0000 (06:57 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Mon, 13 Dec 2004 06:57:15 +0000 (06:57 +0000)
* Correct the std::string constructor to take a const reference.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18877 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/System/Path.h
lib/System/Unix/Path.cpp
lib/System/Unix/Path.inc
lib/System/Win32/Path.cpp
lib/System/Win32/Path.inc

index 7862e21..10c8bcc 100644 (file)
@@ -18,6 +18,7 @@
 #include <set>
 #include <string>
 #include <vector>
+#include <ostream>
 
 namespace llvm {
 namespace sys {
@@ -161,7 +162,7 @@ namespace sys {
       /// @throws std::string if the path string is not legal.
       /// @param unverified_path The path to verify and assign.
       /// @brief Construct a Path from a string.
-      explicit Path(std::string unverified_path);
+      explicit Path(const std::string& unverified_path);
 
     /// @}
     /// @name Operators
@@ -547,6 +548,11 @@ namespace sys {
   LLVMFileType IdentifyFileType(const char*magic, unsigned length);
 }
 
+inline std::ostream& operator<<(std::ostream& strm, const sys::Path& aPath) {
+  strm << aPath.toString();
+  return strm;
+}
+
 }
 
 // vim: sw=2
index 63184f6..e655ef4 100644 (file)
@@ -27,7 +27,7 @@
 namespace llvm {
 using namespace sys;
 
-Path::Path(std::string unverified_path) 
+Path::Path(const std::string& unverified_path) 
   : path(unverified_path)
 {
   if (unverified_path.empty())
index 63184f6..e655ef4 100644 (file)
@@ -27,7 +27,7 @@
 namespace llvm {
 using namespace sys;
 
-Path::Path(std::string unverified_path) 
+Path::Path(const std::string& unverified_path) 
   : path(unverified_path)
 {
   if (unverified_path.empty())
index 095417f..070ebb3 100644 (file)
@@ -97,7 +97,7 @@ Path::GetTemporaryDirectory() {
   return *TempDirectory;
 }
 
-Path::Path(std::string unverified_path)
+Path::Path(const std::string& unverified_path)
   : path(unverified_path)
 {
   FlipBackSlashes(path);
index 095417f..070ebb3 100644 (file)
@@ -97,7 +97,7 @@ Path::GetTemporaryDirectory() {
   return *TempDirectory;
 }
 
-Path::Path(std::string unverified_path)
+Path::Path(const std::string& unverified_path)
   : path(unverified_path)
 {
   FlipBackSlashes(path);