Package ghidra.program.model.data
Class Undefined
- java.lang.Object
-
- ghidra.program.model.data.AbstractDataType
-
- ghidra.program.model.data.DataTypeImpl
-
- ghidra.program.model.data.BuiltIn
-
- ghidra.program.model.data.Undefined
-
- All Implemented Interfaces:
BuiltInDataType
,DataType
,ExtensionPoint
,java.util.EventListener
,javax.swing.event.ChangeListener
- Direct Known Subclasses:
Undefined1DataType
,Undefined2DataType
,Undefined3DataType
,Undefined4DataType
,Undefined5DataType
,Undefined6DataType
,Undefined7DataType
,Undefined8DataType
public abstract class Undefined extends BuiltIn
Undefined
identifies an undefined data type
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface ghidra.util.classfinder.ExtensionPoint
ExtensionPoint.Exclude, ExtensionPoint.Util
-
-
Field Summary
-
Fields inherited from class ghidra.program.model.data.DataTypeImpl
defaultSettings
-
Fields inherited from class ghidra.program.model.data.AbstractDataType
categoryPath, dataMgr, name
-
Fields inherited from interface ghidra.program.model.data.DataType
CONFLICT_SUFFIX, DEFAULT, NO_LAST_CHANGE_TIME, NO_SOURCE_SYNC_TIME, VOID
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
Undefined(java.lang.String name, DataTypeManager dtm)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DataType
getUndefinedDataType(int size)
Get an Undefined data-type instance of the requested sizestatic Undefined[]
getUndefinedDataTypes()
boolean
isDynamicallySized()
Indicates if this data-type is dynamically sized based upon DataOrganization.static boolean
isUndefined(DataType dataType)
Determine if the specified dataType is either a DefaultDataType, an Undefined data-type, or an Array of Undefined data-types.static boolean
isUndefinedArray(DataType dataType)
Determine if the specified dataType is an undefined array used to represent large undefined data.-
Methods inherited from class ghidra.program.model.data.BuiltIn
addParent, copy, dataTypeDeleted, dataTypeNameChanged, dataTypeReplaced, dataTypeSizeChanged, dependsOn, getBuiltInSettingsDefinitions, getCTypeDeclaration, getCTypeDeclaration, getCTypeDeclaration, getCTypeDeclaration, getDecompilerDisplayName, getLastChangeTime, getSettingsDefinitions, getUniversalID, isEquivalent, removeParent, setCategoryPath, setName, setNameAndCategory
-
Methods inherited from class ghidra.program.model.data.DataTypeImpl
equals, getAlignment, getDefaultSettings, getLastChangeTimeInSourceArchive, getParents, getPathName, getSourceArchive, getValueClass, hashCode, notifyDeleted, notifyNameChanged, notifyReplaced, notifySizeChanged, replaceWith, setDefaultSettings, setDescription, setLastChangeTime, setLastChangeTimeInSourceArchive, setSourceArchive, stateChanged
-
Methods inherited from class ghidra.program.model.data.AbstractDataType
getCategoryPath, getDataOrganization, getDataTypeManager, getDataTypePath, getDefaultAbbreviatedLabelPrefix, getDefaultLabelPrefix, getDefaultLabelPrefix, getDefaultOffcutLabelPrefix, getDisplayName, getDocs, getMnemonic, getName, isDeleted, isNotYetDefined, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ghidra.program.model.data.DataType
clone, getAlignment, getCategoryPath, getDataOrganization, getDataTypeManager, getDataTypePath, getDefaultAbbreviatedLabelPrefix, getDefaultLabelPrefix, getDefaultLabelPrefix, getDefaultOffcutLabelPrefix, getDefaultSettings, getDescription, getDisplayName, getDocs, getLastChangeTimeInSourceArchive, getLength, getMnemonic, getName, getParents, getPathName, getRepresentation, getSourceArchive, getValue, getValueClass, isDeleted, isNotYetDefined, replaceWith, setDefaultSettings, setDescription, setLastChangeTime, setLastChangeTimeInSourceArchive, setSourceArchive
-
-
-
-
Constructor Detail
-
Undefined
protected Undefined(java.lang.String name, DataTypeManager dtm)
-
-
Method Detail
-
isDynamicallySized
public boolean isDynamicallySized()
Description copied from interface:DataType
Indicates if this data-type is dynamically sized based upon DataOrganization.- Specified by:
isDynamicallySized
in interfaceDataType
- Overrides:
isDynamicallySized
in classAbstractDataType
- See Also:
DataType.isDynamicallySized()
-
getUndefinedDataType
public static DataType getUndefinedDataType(int size)
Get an Undefined data-type instance of the requested size- Parameters:
size
- data type size, sizes greater than 8 will cause an Undefined1[size] (i.e., Array) to be returned.- Returns:
- Undefined data type
-
getUndefinedDataTypes
public static Undefined[] getUndefinedDataTypes()
-
isUndefined
public static boolean isUndefined(DataType dataType)
Determine if the specified dataType is either a DefaultDataType, an Undefined data-type, or an Array of Undefined data-types.- Parameters:
dataType
-- Returns:
- true if dataType represents an undefined data-type in its various forms, else false.
-
isUndefinedArray
public static boolean isUndefinedArray(DataType dataType)
Determine if the specified dataType is an undefined array used to represent large undefined data.- Parameters:
dataType
-- Returns:
- true if the specified dataType is an undefined array used to represent large undefined data, otherwise false.
-
-