| //===-- ScriptInterpreterNone.cpp -------------------------------*- C++ -*-===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #include "ScriptInterpreterNone.h" |
| #include "lldb/Core/Debugger.h" |
| #include "lldb/Core/PluginManager.h" |
| #include "lldb/Core/Stream.h" |
| #include "lldb/Core/StreamFile.h" |
| #include "lldb/Core/StringList.h" |
| #include "lldb/Interpreter/CommandInterpreter.h" |
| |
| #include <mutex> |
| |
| using namespace lldb; |
| using namespace lldb_private; |
| |
| ScriptInterpreterNone::ScriptInterpreterNone(CommandInterpreter &interpreter) |
| : ScriptInterpreter(interpreter, eScriptLanguageNone) |
| { |
| } |
| |
| ScriptInterpreterNone::~ScriptInterpreterNone() |
| { |
| } |
| |
| bool |
| ScriptInterpreterNone::ExecuteOneLine(const char *command, CommandReturnObject *, const ExecuteScriptOptions &) |
| { |
| m_interpreter.GetDebugger().GetErrorFile()->PutCString( |
| "error: there is no embedded script interpreter in this mode.\n"); |
| return false; |
| } |
| |
| void |
| ScriptInterpreterNone::ExecuteInterpreterLoop() |
| { |
| m_interpreter.GetDebugger().GetErrorFile()->PutCString( |
| "error: there is no embedded script interpreter in this mode.\n"); |
| } |
| |
| void |
| ScriptInterpreterNone::Initialize() |
| { |
| static std::once_flag g_once_flag; |
| |
| std::call_once(g_once_flag, []() |
| { |
| PluginManager::RegisterPlugin(GetPluginNameStatic(), GetPluginDescriptionStatic(), |
| lldb::eScriptLanguageNone, CreateInstance); |
| }); |
| } |
| |
| void |
| ScriptInterpreterNone::Terminate() |
| { |
| } |
| |
| lldb::ScriptInterpreterSP |
| ScriptInterpreterNone::CreateInstance(CommandInterpreter &interpreter) |
| { |
| return std::make_shared<ScriptInterpreterNone>(interpreter); |
| } |
| |
| lldb_private::ConstString |
| ScriptInterpreterNone::GetPluginNameStatic() |
| { |
| static ConstString g_name("script-none"); |
| return g_name; |
| } |
| |
| const char * |
| ScriptInterpreterNone::GetPluginDescriptionStatic() |
| { |
| return "Null script interpreter"; |
| } |
| |
| lldb_private::ConstString |
| ScriptInterpreterNone::GetPluginName() |
| { |
| return GetPluginNameStatic(); |
| } |
| |
| uint32_t |
| ScriptInterpreterNone::GetPluginVersion() |
| { |
| return 1; |
| } |