Package ghidra.app.cmd.data.rtti
Interface ClassTypeInfo
- All Superinterfaces:
TypeInfo
- All Known Subinterfaces:
VsClassTypeInfo
- All Known Implementing Classes:
AbstractClassTypeInfoDB,AbstractClassTypeInfoModel,ArchivedClassTypeInfo,ClassTypeInfoDB,ClassTypeInfoModel,ExternalClassTypeInfo,GnuClassTypeInfoDB,IosFailTypeInfoModel,RttiModelWrapper,SiClassTypeInfoModel,VmiClassTypeInfoModel,VsClassTypeInfoDB
public interface ClassTypeInfo extends TypeInfo
Interface for modeling std::type_info and its derivatives.
All derived models are based on dwarf information from libstdc++.a
All derived models are based on dwarf information from libstdc++.a
-
Field Summary
Fields inherited from interface ghidra.app.cmd.data.rtti.TypeInfo
SYMBOL_NAME, TYPENAME_SYMBOL_NAME -
Method Summary
Modifier and Type Method Description default VtablefindVtable()Locates the TypeInfo's Vtable Model using the DUMMY TaskMonitorVtablefindVtable(TaskMonitor monitor)Locates the TypeInfo's Vtable ModelStructuregetClassDataType()Gets the underlying structure of the class for this ClassTypeInfodefault StringgetFullName()GhidraClassgetGhidraClass()Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.ClassTypeInfo[]getParentModels()Retrieves the Models of this ClassTypeInfo classes base classesdefault DataTypegetRepresentedDataType()Gets the DataType represented by this TypeInfodefault SymbolPathgetSymbolPath()default StringgetUniqueTypeName()Deprecated, for removal: This API element is subject to removal in a future version.this no longer serves a purposeSet<ClassTypeInfo>getVirtualParents()Retrieves an ordered set of all virtually inherited base classesVtablegetVtable()Gets the TypeInfo's Vtable ModelbooleanhasParent()Checks if this ClassTypeInfo is a subclass of another typebooleanisAbstract()Determines if the represented class is an abstract basedefault booleanisExternal()Methods inherited from interface ghidra.app.cmd.data.rtti.TypeInfo
getAddress, getDataType, getIdentifier, getName, getNamespace, getTypeName
-
Method Details
-
getRepresentedDataType
Description copied from interface:TypeInfoGets the DataType represented by this TypeInfo- Specified by:
getRepresentedDataTypein interfaceTypeInfo- Returns:
- the represented DataType
-
getGhidraClass
GhidraClass getGhidraClass()Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.- Returns:
- The class representation of this TypeInfo instance
-
hasParent
boolean hasParent()Checks if this ClassTypeInfo is a subclass of another type- Returns:
- true if this is a subclass
-
getParentModels
ClassTypeInfo[] getParentModels()Retrieves the Models of this ClassTypeInfo classes base classes- Returns:
- the parent models
-
getVirtualParents
Set<ClassTypeInfo> getVirtualParents()Retrieves an ordered set of all virtually inherited base classes- Returns:
- the set of virtual bases
-
isAbstract
boolean isAbstract()Determines if the represented class is an abstract base- Returns:
- true if abstract
-
findVtable
Locates the TypeInfo's Vtable Model- Parameters:
monitor- the task monitor to be used while searching for the vtable- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLEif none exists - Throws:
CancelledException- if the search is cancelled
-
findVtable
Locates the TypeInfo's Vtable Model using the DUMMY TaskMonitor- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLEif none exists or the search is cancelled - See Also:
TaskMonitor.DUMMY
-
getVtable
Vtable getVtable()Gets the TypeInfo's Vtable Model- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLEif none exists
-
getClassDataType
Structure getClassDataType()Gets the underlying structure of the class for this ClassTypeInfo- Returns:
- the structure datatype for this class
-
getUniqueTypeName
Deprecated, for removal: This API element is subject to removal in a future version.this no longer serves a purposeGets a unique typename for this ClassTypeInfo instance The resulting string should be identical across all architectures and binaries for a compiler.- Returns:
- a unique typename string
-
isExternal
default boolean isExternal() -
getSymbolPath
-
getFullName
-