LLDB  mainline
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
lldb_private::ObjCPlusPlusLanguage Class Reference

#include <ObjCPlusPlusLanguage.h>

Inheritance diagram for lldb_private::ObjCPlusPlusLanguage:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::ObjCPlusPlusLanguage:
Collaboration graph
[legend]

Public Member Functions

 ObjCPlusPlusLanguage ()=default
 
 ~ObjCPlusPlusLanguage () override=default
 
lldb::LanguageType GetLanguageType () const override
 
llvm::StringRef GetNilReferenceSummaryString () override
 Returns the summary string for ValueObjects for which IsNilReference() is true. More...
 
bool IsSourceFile (llvm::StringRef file_path) const override
 
const HighlighterGetHighlighter () const override
 
ConstString GetPluginName () override
 
- Public Member Functions inherited from lldb_private::Language
 ~Language () override
 
virtual bool IsTopLevelFunction (Function &function)
 
virtual lldb::TypeCategoryImplSP GetFormatters ()
 
virtual HardcodedFormatters::HardcodedFormatFinder GetHardcodedFormats ()
 
virtual HardcodedFormatters::HardcodedSummaryFinder GetHardcodedSummaries ()
 
virtual HardcodedFormatters::HardcodedSyntheticFinder GetHardcodedSynthetics ()
 
virtual std::vector< ConstStringGetPossibleFormattersMatches (ValueObject &valobj, lldb::DynamicValueType use_dynamic)
 
virtual std::unique_ptr< TypeScavengerGetTypeScavenger ()
 
virtual const char * GetLanguageSpecificTypeLookupHelp ()
 
virtual std::vector< Language::MethodNameVariantGetMethodNameVariants (ConstString method_name) const
 
virtual bool SymbolNameFitsToLanguage (Mangled name) const
 Returns true iff the given symbol name is compatible with the mangling scheme of this language. More...
 
virtual bool GetFormatterPrefixSuffix (ValueObject &valobj, ConstString type_hint, std::string &prefix, std::string &suffix)
 
virtual DumpValueObjectOptions::DeclPrintingHelper GetDeclPrintingHelper ()
 
virtual LazyBool IsLogicalTrue (ValueObject &valobj, Status &error)
 
virtual bool IsNilReference (ValueObject &valobj)
 
virtual bool IsUninitializedReference (ValueObject &valobj)
 
virtual bool GetFunctionDisplayName (const SymbolContext *sc, const ExecutionContext *exe_ctx, FunctionNameRepresentation representation, Stream &s)
 
virtual ConstString GetDemangledFunctionNameWithoutArguments (Mangled mangled) const
 
virtual void GetExceptionResolverDescription (bool catch_on, bool throw_on, Stream &s)
 
virtual std::vector< ConstStringGenerateAlternateFunctionManglings (const ConstString mangled) const
 
- Public Member Functions inherited from lldb_private::PluginInterface
 PluginInterface ()=default
 
virtual ~PluginInterface ()=default
 
 PluginInterface (const PluginInterface &)=delete
 
PluginInterfaceoperator= (const PluginInterface &)=delete
 

Static Public Member Functions

static void Initialize ()
 
static void Terminate ()
 
static lldb_private::LanguageCreateInstance (lldb::LanguageType language)
 
static lldb_private::ConstString GetPluginNameStatic ()
 
- Static Public Member Functions inherited from lldb_private::Language
static LanguageFindPlugin (lldb::LanguageType language)
 
static LanguageFindPlugin (llvm::StringRef file_path)
 Returns the Language associated with the given file path or a nullptr if there is no known language. More...
 
static LanguageFindPlugin (lldb::LanguageType language, llvm::StringRef file_path)
 
static void ForEach (std::function< bool(Language *)> callback)
 
static void GetDefaultExceptionResolverDescription (bool catch_on, bool throw_on, Stream &s)
 
static lldb::LanguageType GetLanguageTypeFromString (const char *string)=delete
 
static lldb::LanguageType GetLanguageTypeFromString (llvm::StringRef string)
 
static const char * GetNameForLanguageType (lldb::LanguageType language)
 
static void PrintAllLanguages (Stream &s, const char *prefix, const char *suffix)
 
static void ForAllLanguages (std::function< bool(lldb::LanguageType)> callback)
 
static bool LanguageIsCPlusPlus (lldb::LanguageType language)
 
static bool LanguageIsObjC (lldb::LanguageType language)
 
static bool LanguageIsC (lldb::LanguageType language)
 
static bool LanguageIsCFamily (lldb::LanguageType language)
 Equivalent to LanguageIsC||LanguageIsObjC||LanguageIsCPlusPlus. More...
 
static bool LanguageIsPascal (lldb::LanguageType language)
 
static lldb::LanguageType GetPrimaryLanguage (lldb::LanguageType language)
 
static std::set< lldb::LanguageTypeGetSupportedLanguages ()
 
static LanguageSet GetLanguagesSupportingTypeSystems ()
 
static LanguageSet GetLanguagesSupportingTypeSystemsForExpressions ()
 
static LanguageSet GetLanguagesSupportingREPLs ()
 

Private Attributes

ClangHighlighter m_highlighter
 

Additional Inherited Members

- Public Types inherited from lldb_private::Language
enum  FunctionNameRepresentation { FunctionNameRepresentation::eName, FunctionNameRepresentation::eNameWithArgs, FunctionNameRepresentation::eNameWithNoArgs }
 
- Protected Member Functions inherited from lldb_private::Language
 Language ()
 

Detailed Description

Definition at line 18 of file ObjCPlusPlusLanguage.h.

Constructor & Destructor Documentation

◆ ObjCPlusPlusLanguage()

lldb_private::ObjCPlusPlusLanguage::ObjCPlusPlusLanguage ( )
default

◆ ~ObjCPlusPlusLanguage()

lldb_private::ObjCPlusPlusLanguage::~ObjCPlusPlusLanguage ( )
overridedefault

Member Function Documentation

◆ CreateInstance()

Language * ObjCPlusPlusLanguage::CreateInstance ( lldb::LanguageType  language)
static

Definition at line 48 of file ObjCPlusPlusLanguage.cpp.

References lldb::eLanguageTypeObjC_plus_plus.

◆ GetHighlighter()

const Highlighter* lldb_private::ObjCPlusPlusLanguage::GetHighlighter ( ) const
inlineoverridevirtual

Reimplemented from lldb_private::Language.

Definition at line 34 of file ObjCPlusPlusLanguage.h.

References m_highlighter.

◆ GetLanguageType()

lldb::LanguageType lldb_private::ObjCPlusPlusLanguage::GetLanguageType ( ) const
inlineoverridevirtual

Implements lldb_private::Language.

Definition at line 26 of file ObjCPlusPlusLanguage.h.

References lldb::eLanguageTypeObjC_plus_plus.

◆ GetNilReferenceSummaryString()

llvm::StringRef lldb_private::ObjCPlusPlusLanguage::GetNilReferenceSummaryString ( )
inlineoverridevirtual

Returns the summary string for ValueObjects for which IsNilReference() is true.

Reimplemented from lldb_private::Language.

Definition at line 30 of file ObjCPlusPlusLanguage.h.

◆ GetPluginName()

lldb_private::ConstString ObjCPlusPlusLanguage::GetPluginName ( )
overridevirtual

Implements lldb_private::PluginInterface.

Definition at line 43 of file ObjCPlusPlusLanguage.cpp.

◆ GetPluginNameStatic()

lldb_private::ConstString ObjCPlusPlusLanguage::GetPluginNameStatic ( )
static

Definition at line 37 of file ObjCPlusPlusLanguage.cpp.

◆ Initialize()

void ObjCPlusPlusLanguage::Initialize ( )
static

Definition at line 28 of file ObjCPlusPlusLanguage.cpp.

◆ IsSourceFile()

bool ObjCPlusPlusLanguage::IsSourceFile ( llvm::StringRef  file_path) const
overridevirtual

Implements lldb_private::Language.

Definition at line 19 of file ObjCPlusPlusLanguage.cpp.

◆ Terminate()

void ObjCPlusPlusLanguage::Terminate ( )
static

Definition at line 33 of file ObjCPlusPlusLanguage.cpp.

Member Data Documentation

◆ m_highlighter

ClangHighlighter lldb_private::ObjCPlusPlusLanguage::m_highlighter
private

Definition at line 19 of file ObjCPlusPlusLanguage.h.

Referenced by GetHighlighter().


The documentation for this class was generated from the following files: