15#include "llvm/Support/Threading.h"
30 "error: Embedded script interpreter unavailable. LLDB was built without "
31 "scripting language support.\n";
45 static llvm::once_flag g_once_flag;
47 llvm::call_once(g_once_flag, []() {
58 return std::make_shared<ScriptInterpreterNone>(debugger);
62 return "Null script interpreter";
#define LLDB_PLUGIN_DEFINE(PluginName)
static const char * no_interpreter_err_msg
A class to manage flag bits.
StreamFile & GetErrorStream()
static bool RegisterPlugin(llvm::StringRef name, llvm::StringRef description, ABICreateInstance create_callback)
bool ExecuteOneLine(llvm::StringRef command, CommandReturnObject *result, const ExecuteScriptOptions &options=ExecuteScriptOptions()) override
static llvm::StringRef GetPluginNameStatic()
static llvm::StringRef GetPluginDescriptionStatic()
void ExecuteInterpreterLoop() override
static lldb::ScriptInterpreterSP CreateInstance(Debugger &debugger)
~ScriptInterpreterNone() override
size_t PutCString(llvm::StringRef cstr)
Output a C string to the stream.
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::ScriptInterpreter > ScriptInterpreterSP