llvm-project/lldb/source/Interpreter
Zachary Turner 0b9d3eefdb Enhance the Pipe interface for better portability.
This patch makes a number of improvements to the Pipe interface.

1) An interface (PipeBase) is provided which exposes pure virtual
   methods for any implementation of Pipe to override.  While not
   strictly necessary, this helps catch errors where the interfaces
   are out of sync.

2) All methods return lldb_private::Error instead of returning bool
   or void.  This allows richer error information to be propagated
   up to LLDB.

3) A new ReadWithTimeout() method is exposed in the base class and
   implemented on Windows.

4) Support for both named and anonymous pipes is exposed through the
   base interface and implemented on Windows.  For creating a new
   pipe, both named and anonymous pipes are supported, and for
   opening an existing pipe, only named pipes are supported.

New methods described in points #3 and #4 are stubbed out on posix,
but fully implemented on Windows.  These should be implemented by
someone on the linux / mac / bsd side.

Reviewed by: Greg Clayton, Oleksiy Vyalov
Differential Revision: http://reviews.llvm.org/D6686

llvm-svn: 224442
2014-12-17 18:02:19 +00:00
..
Args.cpp It's possible for long_options[long_options_index].definition to be null 2014-10-16 01:26:51 +00:00
CMakeLists.txt Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
CommandHistory.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
CommandInterpreter.cpp Added a new regular expression to the "_regexp-break" command ("b" by default): 2014-12-01 22:34:03 +00:00
CommandObject.cpp Add the ability to tag one or more breakpoints with a name. These 2014-12-16 23:40:14 +00:00
CommandObjectRegexCommand.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
CommandObjectScript.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
CommandObjectScript.h Fix a few more clang (3.2) warnings on Linux: 2012-12-07 22:21:08 +00:00
CommandOptionValidators.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
CommandReturnObject.cpp Any commands that are executed through the public interface using SBCommandInterpreter::HandleCommand() are assumed to be in non-interactive mode. 2014-07-15 00:25:59 +00:00
Makefile Fix configure & make build with python disabled 2014-09-09 04:52:37 +00:00
OptionGroupArchitecture.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
OptionGroupBoolean.cpp Fix tests broken by the OptionValidator changes. 2014-07-09 16:32:07 +00:00
OptionGroupFile.cpp Fix tests broken by the OptionValidator changes. 2014-07-09 16:32:07 +00:00
OptionGroupFormat.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
OptionGroupOutputFile.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
OptionGroupPlatform.cpp Test suite runs better again after recent fixes that would select a platform if a "file a.out" auto selected a different platform than the selected one. 2014-09-19 20:11:50 +00:00
OptionGroupString.cpp Fix tests broken by the OptionValidator changes. 2014-07-09 16:32:07 +00:00
OptionGroupUInt64.cpp Fix tests broken by the OptionValidator changes. 2014-07-09 16:32:07 +00:00
OptionGroupUUID.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
OptionGroupValueObjectDisplay.cpp Do some cleanup of DumpValueObjectOptions. The whole concept of raw printing was split between feature-specific flags, and an m_be_raw flag, which then drove some other changes in printing behavior. Clean that up, so that each functionality has its own flag .. oh, and make the bools all go in a bitfield since I may want to add more of those over time 2014-11-21 18:47:26 +00:00
OptionGroupVariable.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
OptionGroupWatchpoint.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
OptionValue.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValueArch.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValueArgs.cpp Reimplemented the code that backed the "settings" in lldb. There were many issues with the previous implementation: 2012-08-22 17:17:09 +00:00
OptionValueArray.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValueBoolean.cpp lldb: remove adhoc implementation of array_sizeof 2014-06-27 05:17:41 +00:00
OptionValueDictionary.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValueEnumeration.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValueFileSpec.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValueFileSpecLIst.cpp Remove unreachable code. 2014-10-16 08:07:54 +00:00
OptionValueFormat.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
OptionValuePathMappings.cpp Remove unreachable code. 2014-10-16 08:08:13 +00:00
OptionValueProperties.cpp Fix a few typos. 2014-06-27 02:42:12 +00:00
OptionValueRegex.cpp Reimplemented the code that backed the "settings" in lldb. There were many issues with the previous implementation: 2012-08-22 17:17:09 +00:00
OptionValueSInt64.cpp Resolve printf formatting warnings on Linux: 2012-11-29 21:49:15 +00:00
OptionValueString.cpp Now that "settings set" will strip leading and trailing spaces, we need a way to be able to specify string values that contain spaces. So now settings setting <property> <value>" can have a <value> that is quoted: 2013-03-06 02:19:38 +00:00
OptionValueUInt64.cpp Resolve printf formatting warnings on Linux: 2012-11-29 21:49:15 +00:00
OptionValueUUID.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
Options.cpp Revert "Fix broken tests due to new error output." 2014-07-09 16:31:49 +00:00
Property.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
PythonDataObjects.cpp Switch NULL to C++11 nullptr in source/Interpreter 2014-04-20 00:31:37 +00:00
ScriptInterpreter.cpp Add a feature where a string data formatter can now be partially composed of Python summary functions 2014-10-28 21:07:00 +00:00
ScriptInterpreterNone.cpp Merging the iohandler branch back into main. 2014-01-27 23:43:24 +00:00
ScriptInterpreterPython.cpp Enhance the Pipe interface for better portability. 2014-12-17 18:02:19 +00:00
embedded_interpreter.py Continuation broken for Python scripts when using non-interactive input (Xcode for example). 2014-09-15 22:46:25 +00:00