InputReaderEZ.h revision f0c372a6b5c388889601f5c062f63994d875830f
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 15namespace lldb_private { 16 17class InputReaderEZ : public InputReader 18{ 19 20private: 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); 27public: 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 77protected: 78 friend class Debugger; 79 80private: 81 DISALLOW_COPY_AND_ASSIGN (InputReaderEZ); 82 83}; 84 85} // namespace lldb_private 86 87#endif // #ifndef liblldb_InputReaderEZ_h_ 88