Package ghidra.app.cmd.data.rtti.gcc
Class VtableModel
java.lang.Object
ghidra.app.cmd.data.rtti.gcc.VtableModel
public final class VtableModel extends Object implements GnuVtable
Model for GNU Vtables
-
Nested Class Summary
Nested classes/interfaces inherited from interface ghidra.app.cmd.data.rtti.GnuVtable
GnuVtable.VtablePrefixNested classes/interfaces inherited from interface ghidra.app.cmd.data.rtti.Vtable
Vtable.InvalidVtable -
Field Summary
Fields Modifier and Type Field Description static StringCONSTRUCTION_SYMBOL_NAMEstatic StringDESCRIPTIONstatic StringMANGLED_PREFIXstatic StringSYMBOL_NAMEFields inherited from interface ghidra.app.cmd.data.rtti.GnuVtable
PURE_VIRTUAL_FUNCTION_NAME -
Method Summary
Modifier and Type Method Description booleancontainsFunction(Function function)Checks if this vtable contains the specified functionbooleanequals(Object object)AddressgetAddress()Gets the corrected start address of the vtable.List<DataType>getDataTypes()Gets the DataTypes that compose this VtableintgetElementCount()Gets the number of vtable_prefix's in this vtableFunction[][]getFunctionTables()Gets the function tables in this vtableintgetLength()longgetOffset(int index, int ordinal)Gets the ptrdiff_t value within the base offset array.List<GnuVtable.VtablePrefix>getPrefixes()Gets the vtable prefixes that compose this vtableAddress[]getTableAddresses()Gets the addresses of this vtable's function tablesClassTypeInfogetTypeInfo()Returns the TypeInfo Model this vtable points tostatic GnuVtablegetVtable(Program program, Address address)static GnuVtablegetVtable(Program program, Address address, ClassTypeInfo type)inthashCode()booleanisConstruction()
-
Field Details
-
SYMBOL_NAME
- See Also:
- Constant Field Values
-
CONSTRUCTION_SYMBOL_NAME
- See Also:
- Constant Field Values
-
DESCRIPTION
- See Also:
- Constant Field Values
-
MANGLED_PREFIX
- See Also:
- Constant Field Values
-
-
Method Details
-
getVtable
-
getVtable
-
getTypeInfo
Description copied from interface:VtableReturns the TypeInfo Model this vtable points to- Specified by:
getTypeInfoin interfaceVtable- Returns:
- the pointed to TypeInfo Model
-
hashCode
public int hashCode() -
equals
-
getAddress
Gets the corrected start address of the vtable.- Specified by:
getAddressin interfaceVtable- Returns:
- the correct start address or NO_ADDRESS if invalid.
-
getTableAddresses
Description copied from interface:VtableGets the addresses of this vtable's function tables- Specified by:
getTableAddressesin interfaceVtable- Returns:
- the addresses of this vtable's function tables
-
getFunctionTables
Description copied from interface:VtableGets the function tables in this vtable- Specified by:
getFunctionTablesin interfaceVtable- Returns:
- this vtable's function tables
-
containsFunction
Description copied from interface:VtableChecks if this vtable contains the specified function- Specified by:
containsFunctionin interfaceVtable- Parameters:
function- the function to check for- Returns:
- true if this vtable contains the specified function
-
getLength
public int getLength()- Specified by:
getLengthin interfaceGnuVtable- Returns:
- the vtable length
- See Also:
DataType.getLength()
-
getOffset
public long getOffset(int index, int ordinal)Description copied from interface:GnuVtableGets the ptrdiff_t value within the base offset array. -
getElementCount
public int getElementCount()Gets the number of vtable_prefix's in this vtable- Returns:
- the number of vtable_prefix's in this vtable
-
getDataTypes
Description copied from interface:GnuVtableGets the DataTypes that compose this Vtable- Specified by:
getDataTypesin interfaceGnuVtable- Returns:
- the list of DataTypes this Vtable is made of
-
getPrefixes
Description copied from interface:GnuVtableGets the vtable prefixes that compose this vtable- Specified by:
getPrefixesin interfaceGnuVtable- Returns:
- the list of vtable prefixes
-
isConstruction
public boolean isConstruction()
-