blob: 49fd4fabfbc5db93224089002d127ba6c1ad8470 [file] [log] [blame]
Zachary Turner2c1f46d2015-07-30 20:28:07 +00001//===-- ScriptInterpreterNone.h ---------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef liblldb_ScriptInterpreterNone_h_
11#define liblldb_ScriptInterpreterNone_h_
12
Eugene Zelenko0af149a2015-10-19 18:52:10 +000013// C Includes
14// C++ Includes
15// Other libraries and framework includes
16// Project includes
Zachary Turner2c1f46d2015-07-30 20:28:07 +000017#include "lldb/Interpreter/ScriptInterpreter.h"
18
19namespace lldb_private
20{
21
22class ScriptInterpreterNone : public ScriptInterpreter
23{
24 public:
25 ScriptInterpreterNone(CommandInterpreter &interpreter);
26
Eugene Zelenko0af149a2015-10-19 18:52:10 +000027 ~ScriptInterpreterNone() override;
Zachary Turner2c1f46d2015-07-30 20:28:07 +000028
29 bool
30 ExecuteOneLine(const char *command, CommandReturnObject *result,
Eugene Zelenko0af149a2015-10-19 18:52:10 +000031 const ExecuteScriptOptions &options = ExecuteScriptOptions()) override;
Zachary Turner2c1f46d2015-07-30 20:28:07 +000032
33 void
Eugene Zelenko0af149a2015-10-19 18:52:10 +000034 ExecuteInterpreterLoop() override;
Zachary Turner2c1f46d2015-07-30 20:28:07 +000035
36 //------------------------------------------------------------------
37 // Static Functions
38 //------------------------------------------------------------------
39 static void
40 Initialize();
41
42 static void
43 Terminate();
44
45 static lldb::ScriptInterpreterSP
46 CreateInstance(CommandInterpreter &interpreter);
47
48 static lldb_private::ConstString
49 GetPluginNameStatic();
50
51 static const char *
52 GetPluginDescriptionStatic();
53
54 //------------------------------------------------------------------
55 // PluginInterface protocol
56 //------------------------------------------------------------------
Eugene Zelenko0af149a2015-10-19 18:52:10 +000057 lldb_private::ConstString
58 GetPluginName() override;
Zachary Turner2c1f46d2015-07-30 20:28:07 +000059
Eugene Zelenko0af149a2015-10-19 18:52:10 +000060 uint32_t
61 GetPluginVersion() override;
Zachary Turner2c1f46d2015-07-30 20:28:07 +000062};
63
64} // namespace lldb_private
65
Eugene Zelenko0af149a2015-10-19 18:52:10 +000066#endif // liblldb_ScriptInterpreterNone_h_