aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2019-12-21 21:54:44 -0800
committerJonas Devlieghere <jonas@devlieghere.com>2019-12-21 21:54:44 -0800
commitacdda1344a0e1b45bd3ba7feb0e8cd398bee0179 (patch)
tree63baad9dd340879c68a8ce267dbefd2dd246266d
parent0fe131aebb4a43ca1017d8e703930058325e3bf3 (diff)
downloadllvm-acdda1344a0e1b45bd3ba7feb0e8cd398bee0179.zip
llvm-acdda1344a0e1b45bd3ba7feb0e8cd398bee0179.tar.gz
llvm-acdda1344a0e1b45bd3ba7feb0e8cd398bee0179.tar.bz2
[lldb/Lua] Add missing boiler plate to ScriptInterpreter.
- Fix enum entry order. - Fix missing enum case in CommandObjectBreakpointCommand. - Add Lua entry to swtich in LanguageToString and simplify the code.
-rw-r--r--lldb/include/lldb/lldb-enumerations.h6
-rw-r--r--lldb/source/Commands/CommandObjectBreakpointCommand.cpp1
-rw-r--r--lldb/source/Interpreter/ScriptInterpreter.cpp24
3 files changed, 14 insertions, 17 deletions
diff --git a/lldb/include/lldb/lldb-enumerations.h b/lldb/include/lldb/lldb-enumerations.h
index 5640a16..dd3d9cc 100644
--- a/lldb/include/lldb/lldb-enumerations.h
+++ b/lldb/include/lldb/lldb-enumerations.h
@@ -211,11 +211,11 @@ enum DescriptionLevel {
/// Script interpreter types.
enum ScriptLanguage {
- eScriptLanguageNone,
+ eScriptLanguageNone = 0,
eScriptLanguagePython,
eScriptLanguageLua,
- eScriptLanguageDefault = eScriptLanguagePython,
- eScriptLanguageUnknown
+ eScriptLanguageUnknown,
+ eScriptLanguageDefault = eScriptLanguagePython
};
/// Register numbering types.
diff --git a/lldb/source/Commands/CommandObjectBreakpointCommand.cpp b/lldb/source/Commands/CommandObjectBreakpointCommand.cpp
index d62fe51..551d0ac 100644
--- a/lldb/source/Commands/CommandObjectBreakpointCommand.cpp
+++ b/lldb/source/Commands/CommandObjectBreakpointCommand.cpp
@@ -307,6 +307,7 @@ are no syntax errors may indicate that a function was declared but never called.
m_use_script_language = true;
break;
case eScriptLanguageNone:
+ case eScriptLanguageUnknown:
m_use_script_language = false;
break;
}
diff --git a/lldb/source/Interpreter/ScriptInterpreter.cpp b/lldb/source/Interpreter/ScriptInterpreter.cpp
index fd47aed..552661e 100644
--- a/lldb/source/Interpreter/ScriptInterpreter.cpp
+++ b/lldb/source/Interpreter/ScriptInterpreter.cpp
@@ -43,21 +43,16 @@ void ScriptInterpreter::CollectDataForWatchpointCommandCallback(
}
std::string ScriptInterpreter::LanguageToString(lldb::ScriptLanguage language) {
- std::string return_value;
-
switch (language) {
case eScriptLanguageNone:
- return_value = "None";
- break;
+ return "None";
case eScriptLanguagePython:
- return_value = "Python";
- break;
+ return "Python";
+ case eScriptLanguageLua:
+ return "Lua";
case eScriptLanguageUnknown:
- return_value = "Unknown";
- break;
+ return "Unknown";
}
-
- return return_value;
}
lldb::ScriptLanguage
@@ -66,6 +61,8 @@ ScriptInterpreter::StringToLanguage(const llvm::StringRef &language) {
return eScriptLanguageNone;
if (language.equals_lower(LanguageToString(eScriptLanguagePython)))
return eScriptLanguagePython;
+ if (language.equals_lower(LanguageToString(eScriptLanguageLua)))
+ return eScriptLanguageLua;
return eScriptLanguageUnknown;
}
@@ -82,13 +79,12 @@ Status ScriptInterpreter::SetBreakpointCommandCallback(
}
Status ScriptInterpreter::SetBreakpointCommandCallbackFunction(
- std::vector<BreakpointOptions *> &bp_options_vec,
- const char *function_name,
+ std::vector<BreakpointOptions *> &bp_options_vec, const char *function_name,
StructuredData::ObjectSP extra_args_sp) {
Status error;
for (BreakpointOptions *bp_options : bp_options_vec) {
- error = SetBreakpointCommandCallbackFunction(bp_options, function_name,
- extra_args_sp);
+ error = SetBreakpointCommandCallbackFunction(bp_options, function_name,
+ extra_args_sp);
if (!error.Success())
return error;
}