summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Language/Java/JavaLanguage.cpp
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2018-11-05 19:34:02 +0000
committerJonas Devlieghere <jonas@devlieghere.com>2018-11-05 19:34:02 +0000
commit0b8c5c9e1330af8e25989e54f3dd50d6404d3ef7 (patch)
tree7f4b7956a5572b2f5826a23d480632053abd1608 /lldb/source/Plugins/Language/Java/JavaLanguage.cpp
parent77198bc79b54267f2ce981c3a6c9c0d6384cac01 (diff)
downloadbcm5719-llvm-0b8c5c9e1330af8e25989e54f3dd50d6404d3ef7.tar.gz
bcm5719-llvm-0b8c5c9e1330af8e25989e54f3dd50d6404d3ef7.zip
Remove Java debugger plugin
In January Davide sent an e-mail to the mailing list to suggest removing unmaintained language plugins such as Go and Java. The plan was to have some cool down period to allow users to speak up, however after that the plugins were never actually removed. This patch removes the Java debugger plugin. The plugin can be added again in the future if it is mature enough both in terms of testing and maintenance commitment. Discussion on the mailing list: http://lists.llvm.org/pipermail/lldb-dev/2018-January/013171.html Differential revision: https://reviews.llvm.org/D54059 llvm-svn: 346158
Diffstat (limited to 'lldb/source/Plugins/Language/Java/JavaLanguage.cpp')
-rw-r--r--lldb/source/Plugins/Language/Java/JavaLanguage.cpp105
1 files changed, 0 insertions, 105 deletions
diff --git a/lldb/source/Plugins/Language/Java/JavaLanguage.cpp b/lldb/source/Plugins/Language/Java/JavaLanguage.cpp
deleted file mode 100644
index 634ae4caf4b..00000000000
--- a/lldb/source/Plugins/Language/Java/JavaLanguage.cpp
+++ /dev/null
@@ -1,105 +0,0 @@
-//===-- JavaLanguage.cpp ----------------------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// C Includes
-#include <string.h>
-// C++ Includes
-#include <functional>
-#include <mutex>
-
-// Other libraries and framework includes
-#include "llvm/ADT/StringRef.h"
-#include "llvm/Support/Threading.h"
-
-// Project includes
-#include "JavaFormatterFunctions.h"
-#include "JavaLanguage.h"
-#include "lldb/Core/PluginManager.h"
-#include "lldb/DataFormatters/DataVisualization.h"
-#include "lldb/DataFormatters/FormattersHelpers.h"
-#include "lldb/Symbol/JavaASTContext.h"
-#include "lldb/Utility/ConstString.h"
-
-using namespace lldb;
-using namespace lldb_private;
-using namespace lldb_private::formatters;
-
-void JavaLanguage::Initialize() {
- PluginManager::RegisterPlugin(GetPluginNameStatic(), "Java Language",
- CreateInstance);
-}
-
-void JavaLanguage::Terminate() {
- PluginManager::UnregisterPlugin(CreateInstance);
-}
-
-lldb_private::ConstString JavaLanguage::GetPluginNameStatic() {
- static ConstString g_name("Java");
- return g_name;
-}
-
-lldb_private::ConstString JavaLanguage::GetPluginName() {
- return GetPluginNameStatic();
-}
-
-uint32_t JavaLanguage::GetPluginVersion() { return 1; }
-
-Language *JavaLanguage::CreateInstance(lldb::LanguageType language) {
- if (language == eLanguageTypeJava)
- return new JavaLanguage();
- return nullptr;
-}
-
-bool JavaLanguage::IsNilReference(ValueObject &valobj) {
- if (!valobj.GetCompilerType().IsReferenceType())
- return false;
-
- // If we failed to read the value then it is not a nil reference.
- return valobj.GetValueAsUnsigned(UINT64_MAX) == 0;
-}
-
-lldb::TypeCategoryImplSP JavaLanguage::GetFormatters() {
- static llvm::once_flag g_initialize;
- static TypeCategoryImplSP g_category;
-
- llvm::call_once(g_initialize, [this]() -> void {
- DataVisualization::Categories::GetCategory(GetPluginName(), g_category);
- if (g_category) {
- llvm::StringRef array_regexp("^.*\\[\\]&?$");
-
- lldb::TypeSummaryImplSP string_summary_sp(new CXXFunctionSummaryFormat(
- TypeSummaryImpl::Flags().SetDontShowChildren(true),
- lldb_private::formatters::JavaStringSummaryProvider,
- "java.lang.String summary provider"));
- g_category->GetTypeSummariesContainer()->Add(
- ConstString("java::lang::String"), string_summary_sp);
-
- lldb::TypeSummaryImplSP array_summary_sp(new CXXFunctionSummaryFormat(
- TypeSummaryImpl::Flags().SetDontShowChildren(true),
- lldb_private::formatters::JavaArraySummaryProvider,
- "Java array summary provider"));
- g_category->GetRegexTypeSummariesContainer()->Add(
- RegularExpressionSP(new RegularExpression(array_regexp)),
- array_summary_sp);
-
-#ifndef LLDB_DISABLE_PYTHON
- AddCXXSynthetic(
- g_category,
- lldb_private::formatters::JavaArraySyntheticFrontEndCreator,
- "Java array synthetic children", ConstString(array_regexp),
- SyntheticChildren::Flags().SetCascades(true), true);
-#endif
- }
- });
- return g_category;
-}
-
-bool JavaLanguage::IsSourceFile(llvm::StringRef file_path) const {
- return file_path.endswith(".java");
-}
OpenPOWER on IntegriCloud