[lldb/API] Add CommandInterpreter::{Get,Set}PrintErrors to SBAPI (NFC)

This patch exposes the getter and setter methods for the command
interpreter `print_errors` run option.

rdar://74816984

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

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
This commit is contained in:
Med Ismail Bennani 2021-03-05 18:30:10 +00:00
parent 36eab4634f
commit c964741996
4 changed files with 66 additions and 0 deletions

View file

@ -18,6 +18,7 @@ A default SBCommandInterpreterRunOptions object has:
* StopOnCrash: false
* EchoCommands: true
* PrintResults: true
* PrintErrors: true
* AddToHistory: true
") SBCommandInterpreterRunOptions;
@ -58,6 +59,12 @@ public:
void
SetPrintResults (bool);
bool
GetPrintErrors () const;
void
SetPrintErrors (bool);
bool
GetAddToHistory () const;

View file

@ -56,6 +56,10 @@ public:
void SetPrintResults(bool);
bool GetPrintErrors() const;
void SetPrintErrors(bool);
bool GetAddToHistory() const;
void SetAddToHistory(bool);

View file

@ -131,6 +131,20 @@ void SBCommandInterpreterRunOptions::SetPrintResults(bool print_results) {
m_opaque_up->SetPrintResults(print_results);
}
bool SBCommandInterpreterRunOptions::GetPrintErrors() const {
LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommandInterpreterRunOptions,
GetPrintErrors);
return m_opaque_up->GetPrintErrors();
}
void SBCommandInterpreterRunOptions::SetPrintErrors(bool print_errors) {
LLDB_RECORD_METHOD(void, SBCommandInterpreterRunOptions, SetPrintErrors,
(bool), print_errors);
m_opaque_up->SetPrintErrors(print_errors);
}
bool SBCommandInterpreterRunOptions::GetAddToHistory() const {
LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommandInterpreterRunOptions,
GetAddToHistory);
@ -269,6 +283,10 @@ template <> void RegisterMethods<SBCommandInterpreterRunOptions>(Registry &R) {
GetPrintResults, ());
LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetPrintResults,
(bool));
LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
GetPrintErrors, ());
LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetPrintErrors,
(bool));
LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
GetAddToHistory, ());
LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetAddToHistory,

View file

@ -73,3 +73,40 @@ class CommandRunInterpreterAPICase(TestBase):
self.assertGreater(n_errors, 0)
self.assertTrue(quit_requested)
self.assertFalse(has_crashed)
class SBCommandInterpreterRunOptionsCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
mydir = TestBase.compute_mydir(__file__)
def test_command_interpreter_run_options(self):
"""Test SBCommandInterpreterRunOptions default values, getters & setters """
opts = lldb.SBCommandInterpreterRunOptions()
# Check getters with default values
self.assertEqual(opts.GetStopOnContinue(), False)
self.assertEqual(opts.GetStopOnError(), False)
self.assertEqual(opts.GetStopOnCrash(), False)
self.assertEqual(opts.GetEchoCommands(), True)
self.assertEqual(opts.GetPrintResults(), True)
self.assertEqual(opts.GetPrintErrors(), True)
self.assertEqual(opts.GetAddToHistory(), True)
# Invert values
opts.SetStopOnContinue(not opts.GetStopOnContinue())
opts.SetStopOnError(not opts.GetStopOnError())
opts.SetStopOnCrash(not opts.GetStopOnCrash())
opts.SetEchoCommands(not opts.GetEchoCommands())
opts.SetPrintResults(not opts.GetPrintResults())
opts.SetPrintErrors(not opts.GetPrintErrors())
opts.SetAddToHistory(not opts.GetAddToHistory())
# Check the value changed
self.assertEqual(opts.GetStopOnContinue(), True)
self.assertEqual(opts.GetStopOnError(), True)
self.assertEqual(opts.GetStopOnCrash(), True)
self.assertEqual(opts.GetEchoCommands(), False)
self.assertEqual(opts.GetPrintResults(), False)
self.assertEqual(opts.GetPrintErrors(), False)
self.assertEqual(opts.GetAddToHistory(), False)