Class TargetStructDescriptor
java.lang.Object
ghidra.app.util.bin.format.swift.SwiftTypeMetadataStructure
ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
ghidra.app.util.bin.format.swift.types.TargetTypeContextDescriptor
ghidra.app.util.bin.format.swift.types.TargetStructDescriptor
- All Implemented Interfaces:
StructConverter
Represents a Swift TargetStructDescriptor structure
- See Also:
-
Field Summary
Fields inherited from class ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
SIZE
Fields inherited from class ghidra.app.util.bin.format.swift.SwiftTypeMetadataStructure
DATA_TYPE_CATEGORY
-
Constructor Summary
ConstructorDescriptionTargetStructDescriptor
(BinaryReader reader) Creates a newTargetStructDescriptor
-
Method Summary
Modifier and TypeMethodDescriptionGets a short description of theSwiftTypeMetadataStructure
int
Gets the offset of the field offset vector for this struct's stored properties in its metadata, if any.int
Gets the number of stored properties in the struct.Gets the name of theSwiftTypeMetadataStructure
Returns a structure datatype representing the contents of the implementor of this interface.Methods inherited from class ghidra.app.util.bin.format.swift.types.TargetTypeContextDescriptor
getAccessFunctionPtr, getFieldDescriptor, getFields, getName, toString
Methods inherited from class ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
getFlags, getParent
Methods inherited from class ghidra.app.util.bin.format.swift.SwiftTypeMetadataStructure
getBase
-
Constructor Details
-
TargetStructDescriptor
Creates a newTargetStructDescriptor
- Parameters:
reader
- ABinaryReader
positioned at the start of the structure- Throws:
IOException
- if there was an IO-related problem creating the structure
-
-
Method Details
-
getNumFields
public int getNumFields()Gets the number of stored properties in the struct. If there is a field offset vector, this is its length.- Returns:
- The number of stored properties in the struct. If there is a field offset vector, this is its length.
-
getFieldOffsetVectorOffset
public int getFieldOffsetVectorOffset()Gets the offset of the field offset vector for this struct's stored properties in its metadata, if any. 0 means there is no field offset vector.- Returns:
- The offset of the field offset vector for this struct's stored properties in its metadata, if any. 0 means there is no field offset vector.
-
getStructureName
Description copied from class:SwiftTypeMetadataStructure
Gets the name of theSwiftTypeMetadataStructure
- Overrides:
getStructureName
in classTargetTypeContextDescriptor
- Returns:
- The name of the
SwiftTypeMetadataStructure
-
getDescription
Description copied from class:SwiftTypeMetadataStructure
Gets a short description of theSwiftTypeMetadataStructure
- Overrides:
getDescription
in classTargetTypeContextDescriptor
- Returns:
- A short description of the
SwiftTypeMetadataStructure
-
toDataType
Description copied from interface:StructConverter
Returns a structure datatype representing the contents of the implementor of this interface.For example, given:
class A { int foo; double bar; }
The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.
- Specified by:
toDataType
in interfaceStructConverter
- Overrides:
toDataType
in classTargetTypeContextDescriptor
- Returns:
- returns a structure datatype representing the implementor of this interface
- Throws:
DuplicateNameException
- when a datatype of the same name already existsIOException
- See Also:
-