• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===-- InputReaderEZ.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_InputReaderEZ_h_
11 #define liblldb_InputReaderEZ_h_
12 
13 #include "lldb/Core/InputReader.h"
14 
15 namespace lldb_private {
16 
17 class InputReaderEZ : public InputReader
18 {
19 
20 private:
21 
22     static size_t Callback_Impl(void *baton,
23                                 InputReader &reader,
24                                 lldb::InputReaderAction notification,
25                                 const char *bytes,
26                                 size_t bytes_len);
27 public:
28 
InputReaderEZ(Debugger & debugger)29     InputReaderEZ (Debugger &debugger) :
30     InputReader(debugger)
31     {}
32 
33     virtual
34     ~InputReaderEZ ();
35 
36     using InputReader::Initialize;
37     virtual Error
38     Initialize(void* baton,
39                lldb::InputReaderGranularity token_size = lldb::eInputReaderGranularityLine,
40                const char* end_token = "DONE",
41                const char *prompt = "> ",
42                bool echo = true);
43 
44     virtual Error
45     Initialize(InitializationParameters& params);
46 
47     virtual void
ActivateHandler(HandlerData &)48     ActivateHandler(HandlerData&) {}
49 
50     virtual void
DeactivateHandler(HandlerData &)51     DeactivateHandler(HandlerData&) {}
52 
53     virtual void
ReactivateHandler(HandlerData &)54     ReactivateHandler(HandlerData&) {}
55 
56     virtual void
AsynchronousOutputWrittenHandler(HandlerData &)57     AsynchronousOutputWrittenHandler(HandlerData&) {}
58 
59     virtual void
GotTokenHandler(HandlerData &)60     GotTokenHandler(HandlerData&) {}
61 
62     virtual void
InterruptHandler(HandlerData &)63     InterruptHandler(HandlerData&) {}
64 
65     virtual void
EOFHandler(HandlerData &)66     EOFHandler(HandlerData&) {}
67 
68     virtual void
DoneHandler(HandlerData &)69     DoneHandler(HandlerData&) {}
70 
71     virtual bool
GetSaveUserInput()72     GetSaveUserInput()
73     {
74         return m_save_user_input;
75     }
76 
77 protected:
78     friend class Debugger;
79 
80 private:
81     DISALLOW_COPY_AND_ASSIGN (InputReaderEZ);
82 
83 };
84 
85 } // namespace lldb_private
86 
87 #endif // #ifndef liblldb_InputReaderEZ_h_
88