]> granicus.if.org Git - clang/commitdiff
Switch the module map printer over to
authorDouglas Gregor <dgregor@apple.com>
Wed, 30 Nov 2011 15:00:49 +0000 (15:00 +0000)
committerDouglas Gregor <dgregor@apple.com>
Wed, 30 Nov 2011 15:00:49 +0000 (15:00 +0000)
raw_ostream::write_escaped. Thanks, Benjamin!

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

lib/Lex/ModuleMap.cpp

index 984c7985e09fb8f1e5f89efde446187aec913129..72d2bee79686d4628f95f33559caf8eecffaf0da 100644 (file)
@@ -72,31 +72,6 @@ static void indent(llvm::raw_ostream &OS, unsigned Spaces) {
   OS << std::string(Spaces, ' ');
 }
 
-static void printEscapedString(llvm::raw_ostream &OS, StringRef String) {
-  for (StringRef::iterator I = String.begin(), E = String.end(); I != E; ++I) {
-    unsigned char Char = *I;
-    
-    switch (Char) {
-    default:
-      if (isprint(Char))
-        OS << (char)Char;
-      else  // Output anything hard as an octal escape.
-        OS << '\\'
-        << (char)('0'+ ((Char >> 6) & 7))
-        << (char)('0'+ ((Char >> 3) & 7))
-        << (char)('0'+ ((Char >> 0) & 7));
-      break;
-      // Handle some common non-printable cases to make dumps prettier.
-    case '\\': OS << "\\\\"; break;
-    case '"': OS << "\\\""; break;
-    case '\n': OS << "\\n"; break;
-    case '\t': OS << "\\t"; break;
-    case '\a': OS << "\\a"; break;
-    case '\b': OS << "\\b"; break;
-    }
-  }
-}
-
 void ModuleMap::Module::print(llvm::raw_ostream &OS, unsigned Indent) const {
   indent(OS, Indent);
   if (IsFramework)
@@ -108,14 +83,14 @@ void ModuleMap::Module::print(llvm::raw_ostream &OS, unsigned Indent) const {
   if (UmbrellaHeader) {
     indent(OS, Indent + 2);
     OS << "umbrella \"";
-    printEscapedString(OS, UmbrellaHeader->getName());
+    OS.write_escaped(UmbrellaHeader->getName());
     OS << "\"\n";
   }
   
   for (unsigned I = 0, N = Headers.size(); I != N; ++I) {
     indent(OS, Indent + 2);
     OS << "header \"";
-    printEscapedString(OS, Headers[I]->getName());
+    OS.write_escaped(Headers[I]->getName());
     OS << "\"\n";
   }