#ifndef LLDB_UNITTESTS_TOOLS_LLDB_SERVER_TESTS_MESSAGEOBJECTS_H
#define LLDB_UNITTESTS_TOOLS_LLDB_SERVER_TESTS_MESSAGEOBJECTS_H
#include "lldb/Host/Host.h"
#include "lldb/Utility/RegisterValue.h"
#include "lldb/Utility/StructuredData.h"
#include "lldb/lldb-types.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/Endian.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/FormatVariadic.h"
#include <string>
namespace llgs_tests {
class ThreadInfo;
ThreadInfoMap;
RegisterMap;
template <typename T> struct Parser { … };
class ProcessInfo : public Parser<ProcessInfo> { … };
class ThreadInfo { … };
class JThreadsInfo : public Parser<JThreadsInfo> { … };
struct RegisterInfoParser : public Parser<lldb_private::RegisterInfo> { … };
llvm::Expected<lldb_private::RegisterValue>
parseRegisterValue(const lldb_private::RegisterInfo &Info,
llvm::StringRef HexValue, llvm::endianness Endian,
bool ZeroPad = false);
class StopReply : public Parser<std::unique_ptr<StopReply>> { … };
class StopReplyStop : public StopReply { … };
class StopReplyExit : public StopReply { … };
llvm::Expected<llvm::StringMap<llvm::StringRef>>
SplitUniquePairList(llvm::StringRef caller, llvm::StringRef s);
llvm::StringMap<llvm::SmallVector<llvm::StringRef, 2>>
SplitPairList(llvm::StringRef s);
template <typename... Args>
llvm::Error make_parsing_error(llvm::StringRef format, Args &&... args) { … }
}
namespace lldb_private {
std::ostream &operator<<(std::ostream &OS, const RegisterValue &RegVal);
}
#endif