LLDB mainline
|
This is a minimal wrapper of a TypeSystem shared pointer as returned by CompilerType which conventien dyn_cast support. More...
#include <CompilerType.h>
Public Member Functions | |
TypeSystemSPWrapper ()=default | |
TypeSystemSPWrapper (lldb::TypeSystemSP typesystem_sp) | |
template<class TypeSystemType > | |
bool | isa_and_nonnull () |
template<class TypeSystemType > | |
std::shared_ptr< TypeSystemType > | dyn_cast_or_null () |
Return a shared_ptr<TypeSystemType> if dyn_cast succeeds. | |
operator bool () const | |
bool | operator== (const TypeSystemSPWrapper &other) const |
bool | operator!= (const TypeSystemSPWrapper &other) const |
TypeSystem * | operator-> () const |
Only to be used in a one-off situations like if (typesystem && typesystem->method()) Do not store this pointer! | |
lldb::TypeSystemSP | GetSharedPointer () const |
Private Attributes | |
lldb::TypeSystemSP | m_typesystem_sp |
This is a minimal wrapper of a TypeSystem shared pointer as returned by CompilerType which conventien dyn_cast support.
Definition at line 49 of file CompilerType.h.
|
default |
|
inline |
Definition at line 54 of file CompilerType.h.
|
inline |
Return a shared_ptr<TypeSystemType> if dyn_cast succeeds.
Definition at line 65 of file CompilerType.h.
References m_typesystem_sp.
Referenced by lldb_private::TypeSystemClang::AddFieldToRecordType(), lldb_private::NameSearchContext::AddFunDecl(), lldb_private::TypeSystemClang::AddMethodToObjCObjectType(), lldb_private::TypeSystemClang::AddObjCClassProperty(), lldb_private::ClangExpressionDeclMap::AddOneVariable(), lldb_private::NameSearchContext::AddVarDecl(), lldb_private::TypeSystemClang::AddVariableToRecordType(), lldb_private::TypeSystemClang::AreTypesSame(), lldb_private::formatters::BlockPointerSyntheticFrontEnd::BlockPointerSyntheticFrontEnd(), lldb_private::TypeSystemClang::BuildIndirectFields(), lldb_private::TypeSystemClang::CompleteTagDeclarationDefinition(), lldb_private::plugin::dwarf::SymbolFileDWARF::CompleteType(), lldb_private::npdb::SymbolFileNativePDB::CompleteType(), lldb_private::ClangASTImporter::CopyType(), lldb_private::TypeSystemClang::CreateMemberPointerType(), lldb_private::ClangASTImporter::DeportType(), DWARFASTParserClang::ExtractIntFromFormValue(), lldb_private::ClangExpressionDeclMap::GetVariableValue(), lldb_private::ClangASTSource::GuardedCopyType(), lldb_private::plugin::dwarf::SymbolFileDWARF::HasForwardDeclForCompilerType(), lldb_private::ClangUtil::IsClangType(), DWARFASTParserClang::ParseChildMembers(), DWARFASTParserClang::ParseInheritance(), lldb_private::TypeSystemClang::RequireCompleteType(), lldb_private::TypeSystemClang::SetIsPacked(), and lldb_private::TypeSystemClang::SetObjCSuperClass().
|
inline |
Definition at line 85 of file CompilerType.h.
References m_typesystem_sp.
Referenced by lldb_private::TypeSystemClang::AddEnumerationValueToEnumerationType(), lldb_private::CompilerType::SetCompilerType(), and lldb_private::formatters::VectorTypeSyntheticFrontEnd::Update().
|
inline |
Definition at line 57 of file CompilerType.h.
References m_typesystem_sp.
|
inlineexplicit |
Definition at line 72 of file CompilerType.h.
References m_typesystem_sp.
|
inline |
Definition at line 76 of file CompilerType.h.
TypeSystem * CompilerType::TypeSystemSPWrapper::operator-> | ( | ) | const |
Only to be used in a one-off situations like if (typesystem && typesystem->method()) Do not store this pointer!
Definition at line 1219 of file CompilerType.cpp.
bool CompilerType::TypeSystemSPWrapper::operator== | ( | const TypeSystemSPWrapper & | other | ) | const |
Definition at line 1210 of file CompilerType.cpp.
References m_typesystem_sp.
|
private |
Definition at line 50 of file CompilerType.h.
Referenced by dyn_cast_or_null(), GetSharedPointer(), isa_and_nonnull(), operator bool(), and operator==().