1 //===-- 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 
13 #include "lldb/Interpreter/ScriptInterpreter.h"
14 
15 namespace lldb_private {
16 
17 class ScriptInterpreterNone : public ScriptInterpreter {
18 public:
19   ScriptInterpreterNone(CommandInterpreter &interpreter);
20 
21   ~ScriptInterpreterNone() override;
22 
23   bool ExecuteOneLine(
24       llvm::StringRef command, CommandReturnObject *result,
25       const ExecuteScriptOptions &options = ExecuteScriptOptions()) override;
26 
27   void ExecuteInterpreterLoop() override;
28 
29   //------------------------------------------------------------------
30   // Static Functions
31   //------------------------------------------------------------------
32   static void Initialize();
33 
34   static void Terminate();
35 
36   static lldb::ScriptInterpreterSP
37   CreateInstance(CommandInterpreter &interpreter);
38 
39   static lldb_private::ConstString GetPluginNameStatic();
40 
41   static const char *GetPluginDescriptionStatic();
42 
43   //------------------------------------------------------------------
44   // PluginInterface protocol
45   //------------------------------------------------------------------
46   lldb_private::ConstString GetPluginName() override;
47 
48   uint32_t GetPluginVersion() override;
49 };
50 
51 } // namespace lldb_private
52 
53 #endif // liblldb_ScriptInterpreterNone_h_
54