diff options
author | Tamas Berghammer <tberghammer@google.com> | 2016-02-26 14:21:23 +0000 |
---|---|---|
committer | Tamas Berghammer <tberghammer@google.com> | 2016-02-26 14:21:23 +0000 |
commit | 87a9769e9b2106a2b5c94b70ed9fa3671a0f8b73 (patch) | |
tree | 7efe5a19551ee8f19eee4caab98fea3218e38285 /lldb/source/Plugins/Language/Java/JavaLanguage.h | |
parent | 5b42c7aa25b826747318824340ff229a60670b42 (diff) | |
download | bcm5719-llvm-87a9769e9b2106a2b5c94b70ed9fa3671a0f8b73.tar.gz bcm5719-llvm-87a9769e9b2106a2b5c94b70ed9fa3671a0f8b73.zip |
Add a set of new plugins to handle Java debugging
The purpose of these plugins is to make LLDB capable of debugging java
code JIT-ed by the android runtime.
Differential revision: http://reviews.llvm.org/D17616
llvm-svn: 262015
Diffstat (limited to 'lldb/source/Plugins/Language/Java/JavaLanguage.h')
-rw-r--r-- | lldb/source/Plugins/Language/Java/JavaLanguage.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Language/Java/JavaLanguage.h b/lldb/source/Plugins/Language/Java/JavaLanguage.h new file mode 100644 index 00000000000..edfa7add048 --- /dev/null +++ b/lldb/source/Plugins/Language/Java/JavaLanguage.h @@ -0,0 +1,64 @@ +//===-- JavaLanguage.h ------------------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#ifndef liblldb_JavaLanguage_h_ +#define liblldb_JavaLanguage_h_ + +// C Includes +// C++ Includes +#include <vector> + +// Other libraries and framework includes +#include "llvm/ADT/StringRef.h" + +// Project includes +#include "lldb/Core/ConstString.h" +#include "lldb/Target/Language.h" +#include "lldb/lldb-private.h" + +namespace lldb_private +{ + +class JavaLanguage : public Language +{ +public: + lldb::LanguageType + GetLanguageType() const override + { + return lldb::eLanguageTypeJava; + } + + static void + Initialize(); + + static void + Terminate(); + + static lldb_private::Language * + CreateInstance(lldb::LanguageType language); + + static lldb_private::ConstString + GetPluginNameStatic(); + + ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; + + bool + IsNilReference(ValueObject &valobj) override; + + lldb::TypeCategoryImplSP + GetFormatters(); +}; + +} // namespace lldb_private + +#endif // liblldb_JavaLanguage_h_ |