Class TargetEnumDescriptor
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.TargetEnumDescriptor
- All Implemented Interfaces:
SwiftStructure
,StructConverter
Represents a Swift TargetEnumDescriptor 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, WORD
Fields inherited from interface ghidra.app.util.bin.format.swift.SwiftStructure
DATA_TYPE_CATEGORY
-
Constructor Summary
ConstructorsConstructorDescriptionTargetEnumDescriptor
(BinaryReader reader) Creates a newTargetEnumDescriptor
-
Method Summary
Modifier and TypeMethodDescriptionGets a short description of theSwiftStructure
int
Gets the number of empty cases in the enumint
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;Gets the name of theSwiftStructure
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, getFields, getName, toString
Methods inherited from class ghidra.app.util.bin.format.swift.types.TargetContextDescriptor
getFlags, getParent
-
Constructor Details
-
TargetEnumDescriptor
Creates a newTargetEnumDescriptor
- Parameters:
reader
- ABinaryReader
positioned 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 interface:SwiftStructure
Gets the name of theSwiftStructure
- Specified by:
getStructureName
in interfaceSwiftStructure
- Overrides:
getStructureName
in classTargetTypeContextDescriptor
- Returns:
- The name of the
SwiftStructure
-
getDescription
Description copied from interface:SwiftStructure
Gets a short description of theSwiftStructure
- Specified by:
getDescription
in interfaceSwiftStructure
- Overrides:
getDescription
in classTargetTypeContextDescriptor
- Returns:
- A short description of the
SwiftStructure
-
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:
-