diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2018-11-05 19:34:02 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2018-11-05 19:34:02 +0000 |
commit | 0b8c5c9e1330af8e25989e54f3dd50d6404d3ef7 (patch) | |
tree | 7f4b7956a5572b2f5826a23d480632053abd1608 /lldb/source/Plugins/Language/Java/JavaLanguage.cpp | |
parent | 77198bc79b54267f2ce981c3a6c9c0d6384cac01 (diff) | |
download | bcm5719-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.cpp | 105 |
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"); -} |