]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/llvm/tools/lldb/include/lldb/Core/InputReaderEZ.h
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / llvm / tools / lldb / include / lldb / Core / InputReaderEZ.h
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     
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
48     ActivateHandler(HandlerData&) {}
49     
50     virtual void
51     DeactivateHandler(HandlerData&) {}
52     
53     virtual void
54     ReactivateHandler(HandlerData&) {}
55     
56     virtual void
57     AsynchronousOutputWrittenHandler(HandlerData&) {}
58     
59     virtual void
60     GotTokenHandler(HandlerData&) {}
61     
62     virtual void
63     InterruptHandler(HandlerData&) {}
64     
65     virtual void
66     EOFHandler(HandlerData&) {}
67     
68     virtual void
69     DoneHandler(HandlerData&) {}
70     
71     virtual bool
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_