llvm/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp

//===-- ObjCLanguage.cpp --------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include <mutex>

#include "ObjCLanguage.h"

#include "Plugins/ExpressionParser/Clang/ClangUtil.h"
#include "Plugins/TypeSystem/Clang/TypeSystemClang.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/ValueObject.h"
#include "lldb/DataFormatters/DataVisualization.h"
#include "lldb/DataFormatters/FormattersHelpers.h"
#include "lldb/Symbol/CompilerType.h"
#include "lldb/Target/Target.h"
#include "lldb/Utility/ConstString.h"
#include "lldb/Utility/StreamString.h"

#include "llvm/Support/Threading.h"

#include "Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.h"
#include "Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h"

#include "CF.h"
#include "Cocoa.h"
#include "CoreMedia.h"
#include "NSDictionary.h"
#include "NSSet.h"
#include "NSString.h"

usingnamespacelldb;
usingnamespacelldb_private;
usingnamespacelldb_private::formatters;

LLDB_PLUGIN_DEFINE()

void ObjCLanguage::Initialize() {}

void ObjCLanguage::Terminate() {}

// Static Functions

Language *ObjCLanguage::CreateInstance(lldb::LanguageType language) {}

std::optional<const ObjCLanguage::MethodName>
ObjCLanguage::MethodName::Create(llvm::StringRef name, bool strict) {}

llvm::StringRef ObjCLanguage::MethodName::GetClassName() const {}

llvm::StringRef ObjCLanguage::MethodName::GetClassNameWithCategory() const {}

llvm::StringRef ObjCLanguage::MethodName::GetSelector() const {}

llvm::StringRef ObjCLanguage::MethodName::GetCategory() const {}

std::string ObjCLanguage::MethodName::GetFullNameWithoutCategory() const {}

std::vector<Language::MethodNameVariant>
ObjCLanguage::GetMethodNameVariants(ConstString method_name) const {}

bool ObjCLanguage::SymbolNameFitsToLanguage(Mangled mangled) const {}

static void LoadObjCFormatters(TypeCategoryImplSP objc_category_sp) {}

static void LoadCoreMediaFormatters(TypeCategoryImplSP objc_category_sp) {}

lldb::TypeCategoryImplSP ObjCLanguage::GetFormatters() {}

std::vector<FormattersMatchCandidate>
ObjCLanguage::GetPossibleFormattersMatches(ValueObject &valobj,
                                           lldb::DynamicValueType use_dynamic) {}

std::unique_ptr<Language::TypeScavenger> ObjCLanguage::GetTypeScavenger() {}

std::pair<llvm::StringRef, llvm::StringRef>
ObjCLanguage::GetFormatterPrefixSuffix(llvm::StringRef type_hint) {}

bool ObjCLanguage::IsNilReference(ValueObject &valobj) {}

bool ObjCLanguage::IsSourceFile(llvm::StringRef file_path) const {}