llvm-project/lldb/source/Commands
Lawrence D'Anna 7ca15ba73f remove File::SetStream(), make new files instead.
Summary:
This patch removes File::SetStream() and File::SetDescriptor(),
and replaces most direct uses of File with pointers to File.
Instead of calling SetStream() on a file, we make a new file and
replace it.

My ultimate goal here is to introduce a new API class SBFile, which
has full support for python io.IOStream file objects.   These can
redirect read() and write() to python code, so lldb::Files will
need a way to dispatch those methods.   Additionally it will need some
form of sharing and assigning files, as a SBFile will be passed in and
assigned to the main IO streams of the debugger.

In my prototype patch queue, I make File itself copyable and add a
secondary class FileOps to manage the sharing and dispatch.  In that
case SBFile was a unique_ptr<File>.
(here: https://github.com/smoofra/llvm-project/tree/files)

However in review, Pavel Labath suggested that it be shared_ptr instead.
(here: https://reviews.llvm.org/D67793)

In order for SBFile to use shared_ptr<File>, everything else should
as well.

If this patch is accepted, I will make SBFile use a shared_ptr
I will remove FileOps from future patches and use subclasses of File
instead.

Reviewers: JDevlieghere, jasonmolenda, zturner, jingham, labath

Reviewed By: labath

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D67891

llvm-svn: 373090
2019-09-27 14:33:35 +00:00
..
CMakeLists.txt Remove `bugreport` command 2019-09-05 21:43:32 +00:00
CommandCompletions.cpp [lldb][NFC] Remove argument prefix checking boilerplate when adding completions 2019-09-23 08:59:21 +00:00
CommandObjectApropos.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectApropos.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectBreakpoint.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectBreakpoint.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectBreakpointCommand.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectBreakpointCommand.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectCommands.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectCommands.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectDisassemble.cpp disassemble command: fix error message when disassembly fails 2019-09-04 13:26:41 +00:00
CommandObjectDisassemble.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectExpression.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectExpression.h [lldb][NFC] Remove WordComplete mode, make result array indexed from 0 and remove any undocumented/redundant return values 2019-08-22 07:41:23 +00:00
CommandObjectFrame.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectFrame.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectGUI.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectGUI.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectHelp.cpp [lldb] Reduce some dangerous boilerplate with CompletionRequest::ShiftArguments 2019-09-23 08:16:19 +00:00
CommandObjectHelp.h [lldb][NFC] Remove dead code that is supposed to handle invalid command options 2019-08-22 08:08:05 +00:00
CommandObjectLanguage.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectLanguage.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectLog.cpp [lldb] Add completion support for log enable/disable/list 2019-09-24 07:18:09 +00:00
CommandObjectLog.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectMemory.cpp Convert FileSystem::Open() to return Expected<FileUP> 2019-09-26 17:54:59 +00:00
CommandObjectMemory.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectMultiword.cpp [lldb] Print an error message for an empty subcommand 2019-09-27 08:49:41 +00:00
CommandObjectPlatform.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectPlatform.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectPlugin.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectPlugin.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectProcess.cpp Don't stop execution in batch mode when process stops with SIGINT or SIGSTOP 2019-09-26 10:57:11 +00:00
CommandObjectProcess.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectQuit.cpp [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectQuit.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectRegister.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectRegister.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectReproducer.cpp [Reproducer] Implement dumping packets. 2019-09-16 23:31:06 +00:00
CommandObjectReproducer.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectSettings.cpp [lldb] Make cursor index in CompletionRequest unsigned 2019-09-23 09:46:17 +00:00
CommandObjectSettings.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectSource.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectSource.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectStats.cpp [lldb][NFC] Remove dead code that handles situations where LLDB has no dummy target 2019-08-26 18:12:44 +00:00
CommandObjectStats.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectTarget.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectTarget.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectThread.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectThread.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectType.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectType.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommandObjectVersion.cpp [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectVersion.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectWatchpoint.cpp [lldb][NFC] Remove ArgEntry::ref member 2019-09-13 11:26:48 +00:00
CommandObjectWatchpoint.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
CommandObjectWatchpointCommand.cpp remove File::SetStream(), make new files instead. 2019-09-27 14:33:35 +00:00
CommandObjectWatchpointCommand.h [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
Options.td [Reproducer] Add reproducer dump command. 2019-09-13 23:27:31 +00:00
OptionsBase.td [lldb] Don't dynamically allocate the posix option validator. 2019-07-26 11:46:21 +00:00