Add 'batch_mode' to CommandInterpreter.  Modify InputReaders to
not write output (prompts, instructions,etc.) if the CommandInterpreter
is in batch_mode.

Also, finish updating InputReaders to write to the asynchronous stream,
rather than using the Debugger's output file directly.



git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133162 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Commands/CommandObjectCommands.cpp b/source/Commands/CommandObjectCommands.cpp
index e8d4377..03fa885 100644
--- a/source/Commands/CommandObjectCommands.cpp
+++ b/source/Commands/CommandObjectCommands.cpp
@@ -925,10 +925,12 @@
                                                     size_t bytes_len)
 {
     CommandObjectCommandsAddRegex *add_regex_cmd = (CommandObjectCommandsAddRegex *) baton;
+    bool batch_mode = reader.GetDebugger().GetCommandInterpreter().GetBatchCommandMode();    
     
     switch (notification)
     {
         case eInputReaderActivate:
+            if (!batch_mode)
             {
                 StreamSP out_stream = reader.GetDebugger().GetAsyncOutputStream ();
                 out_stream->Printf("%s\n", "Enter regular expressions in the form 's/<regex>/<subst>/' and terminate with an empty line:");
@@ -955,9 +957,12 @@
                 Error error (add_regex_cmd->AppendRegexSubstitution (bytes_strref));
                 if (error.Fail())
                 {
-                    StreamSP out_stream = reader.GetDebugger().GetAsyncOutputStream();
-                    out_stream->Printf("error: %s\n", error.AsCString());
-                    out_stream->Flush();
+                    if (!batch_mode)
+                    {
+                        StreamSP out_stream = reader.GetDebugger().GetAsyncOutputStream();
+                        out_stream->Printf("error: %s\n", error.AsCString());
+                        out_stream->Flush();
+                    }
                     add_regex_cmd->InputReaderDidCancel ();
                     reader.SetIsDone (true);
                 }
@@ -967,9 +972,12 @@
         case eInputReaderInterrupt:
             {
                 reader.SetIsDone (true);
-                StreamSP out_stream = reader.GetDebugger().GetAsyncOutputStream();
-                out_stream->PutCString("Regular expression command creations was cancelled.\n");
-                out_stream->Flush();
+                if (!batch_mode)
+                {
+                    StreamSP out_stream = reader.GetDebugger().GetAsyncOutputStream();
+                    out_stream->PutCString("Regular expression command creations was cancelled.\n");
+                    out_stream->Flush();
+                }
                 add_regex_cmd->InputReaderDidCancel ();
             }
             break;