Class TargetStructDescriptor
java.lang.Object
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:
SwiftStructure,StructConverter
Represents a Swift TargetStructDescriptor structure
- See Also:
-
Field Summary
Fields inherited from interface ghidra.app.util.bin.StructConverter
ASCII, BYTE, DWORD, IBO32, IBO64, POINTER, QWORD, SLEB128, STRING, ULEB128, UTF16, UTF8, VOID, WORDFields inherited from interface ghidra.app.util.bin.format.swift.SwiftStructure
DATA_TYPE_CATEGORY -
Constructor Summary
ConstructorsConstructorDescriptionTargetStructDescriptor(BinaryReader reader) Creates a newTargetStructDescriptor -
Method Summary
Modifier and TypeMethodDescriptionGets a short description of theSwiftStructureintGets the offset of the field offset vector for this struct's stored properties in its metadata, if any.intGets the number of stored properties in the struct.Gets the name of theSwiftStructureReturns 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, getFields, getName, toStringMethods inherited from class ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
getFlags, getParent
-
Constructor Details
-
TargetStructDescriptor
Creates a newTargetStructDescriptor- Parameters:
reader- ABinaryReaderpositioned 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 interface:SwiftStructureGets the name of theSwiftStructure- Specified by:
getStructureNamein interfaceSwiftStructure- Overrides:
getStructureNamein classTargetTypeContextDescriptor- Returns:
- The name of the
SwiftStructure
-
getDescription
Description copied from interface:SwiftStructureGets a short description of theSwiftStructure- Specified by:
getDescriptionin interfaceSwiftStructure- Overrides:
getDescriptionin classTargetTypeContextDescriptor- Returns:
- A short description of the
SwiftStructure
-
toDataType
Description copied from interface:StructConverterReturns 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:
toDataTypein interfaceStructConverter- Overrides:
toDataTypein 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:
-