Class TargetEnumDescriptor
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.TargetEnumDescriptor
- All Implemented Interfaces:
StructConverter
Represents a Swift TargetEnumDescriptor structure
- See Also:
-
Field Summary
Fields inherited from class ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
SIZEFields inherited from class ghidra.app.util.bin.format.swift.SwiftTypeMetadataStructure
DATA_TYPE_CATEGORY -
Constructor Summary
ConstructorsConstructorDescriptionTargetEnumDescriptor(BinaryReader reader) Creates a newTargetEnumDescriptor -
Method Summary
Modifier and TypeMethodDescriptionGets a short description of theSwiftTypeMetadataStructureintGets the number of empty cases in the enumintGets the number of non-empty cases in the enum are in the low 24 bits; the offset of the payload size in the metadata record in words, if any, is stored in the high 8 bits;Gets the name of theSwiftTypeMetadataStructureReturns 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, toStringMethods inherited from class ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
getFlags, getParentMethods inherited from class ghidra.app.util.bin.format.swift.SwiftTypeMetadataStructure
getBase
-
Constructor Details
-
TargetEnumDescriptor
Creates a newTargetEnumDescriptor- Parameters:
reader- ABinaryReaderpositioned at the start of the structure- Throws:
IOException- if there was an IO-related problem creating the structure
-
-
Method Details
-
getNumPayloadCasesAndPayloadSizeOffset
public int getNumPayloadCasesAndPayloadSizeOffset()Gets the number of non-empty cases in the enum are in the low 24 bits; the offset of the payload size in the metadata record in words, if any, is stored in the high 8 bits;- Returns:
- The number of non-empty cases in the enum and the offset of the payload size
-
getNumEmptyCases
public int getNumEmptyCases()Gets the number of empty cases in the enum- Returns:
- The number of empty cases in the enum
-
getStructureName
Description copied from class:SwiftTypeMetadataStructureGets the name of theSwiftTypeMetadataStructure- Overrides:
getStructureNamein classTargetTypeContextDescriptor- Returns:
- The name of the
SwiftTypeMetadataStructure
-
getDescription
Description copied from class:SwiftTypeMetadataStructureGets a short description of theSwiftTypeMetadataStructure- Overrides:
getDescriptionin classTargetTypeContextDescriptor- Returns:
- A short description of the
SwiftTypeMetadataStructure
-
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- if an IO-related error occurs- See Also:
-