Package ghidra.app.util.demangler
Class DemangledDataType
- java.lang.Object
- 
- ghidra.app.util.demangler.DemangledType
- 
- ghidra.app.util.demangler.DemangledDataType
 
 
- 
- Direct Known Subclasses:
- DemangledFunctionIndirect,- DemangledFunctionPointer,- DemangledFunctionReference
 
 public class DemangledDataType extends DemangledType A class to represent a demangled data type.
- 
- 
Field SummaryFields Modifier and Type Field Description static java.lang.StringARR_NOTATIONstatic java.lang.StringBOOLstatic java.lang.StringCHARstatic java.lang.StringCLASSstatic java.lang.StringCOCLASSstatic java.lang.StringCOINTERFACEstatic java.lang.StringCOMPLEXstatic java.lang.StringCONSTstatic java.lang.StringDOUBLEstatic java.lang.StringENUMstatic java.lang.StringFLOATstatic java.lang.StringFLOAT128static java.lang.StringINTstatic java.lang.StringINT0_Tstatic java.lang.StringINT128static java.lang.StringINT16static java.lang.StringINT32static java.lang.StringINT64static java.lang.StringINT8static java.lang.StringLONGstatic java.lang.StringLONG_DOUBLEstatic java.lang.StringLONG_LONGstatic java.lang.String[]PRIMITIVESstatic java.lang.StringPTR_NOTATIONstatic java.lang.StringPTR64static java.lang.StringREF_NOTATIONstatic java.lang.StringRESTRICTstatic java.lang.StringSHORTstatic java.lang.StringSIGNEDstatic charSPACEstatic java.lang.StringSTRINGstatic java.lang.StringSTRUCTstatic java.lang.StringUNALIGNEDstatic java.lang.StringUNDEFINEDstatic java.lang.StringUNIONstatic java.lang.StringUNSIGNEDstatic java.lang.StringVARARGSstatic java.lang.StringVOIDstatic java.lang.StringVOLATILEstatic java.lang.StringWCHAR_T- 
Fields inherited from class ghidra.app.util.demangler.DemangledTypenamespace, originalMangled, template
 
- 
 - 
Constructor SummaryConstructors Constructor Description DemangledDataType(java.lang.String name)Constructs a new demangled datatype.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description DemangledDataTypecopy()protected voidcopy(DemangledDataType source, DemangledDataType destination)intgetArrayDimensions()java.lang.StringgetBasedName()DataTypegetDataType(DataTypeManager dataTypeManager)Converts this demangled datatype into the corresponding Ghidra datatype.java.lang.StringgetMemberScope()intgetPointerLevels()voidincrementPointerLevels()booleanisArray()booleanisClass()booleanisCoclass()booleanisCointerface()booleanisComplex()booleanisEnum()booleanisPointer()booleanisPointer64()booleanisPrimitive()booleanisReference()booleanisRestrict()booleanisSigned()booleanisStruct()booleanisTemplate()booleanisUnaligned()booleanisUnion()booleanisUnsigned()booleanisVarArgs()booleanisVoid()voidsetArray(int dimensions)voidsetBasedName(java.lang.String basedName)voidsetClass()voidsetCoclass()voidsetCointerface()voidsetComplex()voidsetEnum()java.lang.StringsetEnumType()voidsetEnumType(java.lang.String enumType)voidsetMemberScope(java.lang.String memberScope)voidsetPointer64()voidsetReference()voidsetRestrict()voidsetSigned()voidsetStruct()voidsetTemplate()voidsetUnaligned()voidsetUnion()voidsetUnsigned()voidsetVarArgs()java.lang.StringtoSignature()java.lang.StringtoString()- 
Methods inherited from class ghidra.app.util.demangler.DemangledTypeconvertToNamespace, getDemangledName, getName, getNamespace, getOriginalMangled, getTemplate, isConst, isFunction, isVolatile, setConst, setName, setNamespace, setOriginalMangled, setTemplate, setVolatile, toNamespace
 
- 
 
- 
- 
- 
Field Detail- 
SPACEpublic static final char SPACE - See Also:
- Constant Field Values
 
 - 
UNSIGNEDpublic static final java.lang.String UNSIGNED - See Also:
- Constant Field Values
 
 - 
SIGNEDpublic static final java.lang.String SIGNED - See Also:
- Constant Field Values
 
 - 
ARR_NOTATIONpublic static final java.lang.String ARR_NOTATION - See Also:
- Constant Field Values
 
 - 
REF_NOTATIONpublic static final java.lang.String REF_NOTATION - See Also:
- Constant Field Values
 
 - 
PTR_NOTATIONpublic static final java.lang.String PTR_NOTATION - See Also:
- Constant Field Values
 
 - 
VOLATILEpublic static final java.lang.String VOLATILE - See Also:
- Constant Field Values
 
 - 
COMPLEXpublic static final java.lang.String COMPLEX - See Also:
- Constant Field Values
 
 - 
CLASSpublic static final java.lang.String CLASS - See Also:
- Constant Field Values
 
 - 
ENUMpublic static final java.lang.String ENUM - See Also:
- Constant Field Values
 
 - 
STRUCTpublic static final java.lang.String STRUCT - See Also:
- Constant Field Values
 
 - 
UNIONpublic static final java.lang.String UNION - See Also:
- Constant Field Values
 
 - 
CONSTpublic static final java.lang.String CONST - See Also:
- Constant Field Values
 
 - 
COCLASSpublic static final java.lang.String COCLASS - See Also:
- Constant Field Values
 
 - 
COINTERFACEpublic static final java.lang.String COINTERFACE - See Also:
- Constant Field Values
 
 - 
VARARGSpublic static final java.lang.String VARARGS - See Also:
- Constant Field Values
 
 - 
VOIDpublic static final java.lang.String VOID - See Also:
- Constant Field Values
 
 - 
BOOLpublic static final java.lang.String BOOL - See Also:
- Constant Field Values
 
 - 
CHARpublic static final java.lang.String CHAR - See Also:
- Constant Field Values
 
 - 
WCHAR_Tpublic static final java.lang.String WCHAR_T - See Also:
- Constant Field Values
 
 - 
SHORTpublic static final java.lang.String SHORT - See Also:
- Constant Field Values
 
 - 
INTpublic static final java.lang.String INT - See Also:
- Constant Field Values
 
 - 
INT0_Tpublic static final java.lang.String INT0_T - See Also:
- Constant Field Values
 
 - 
LONGpublic static final java.lang.String LONG - See Also:
- Constant Field Values
 
 - 
LONG_LONGpublic static final java.lang.String LONG_LONG - See Also:
- Constant Field Values
 
 - 
FLOATpublic static final java.lang.String FLOAT - See Also:
- Constant Field Values
 
 - 
DOUBLEpublic static final java.lang.String DOUBLE - See Also:
- Constant Field Values
 
 - 
INT8public static final java.lang.String INT8 - See Also:
- Constant Field Values
 
 - 
INT16public static final java.lang.String INT16 - See Also:
- Constant Field Values
 
 - 
INT32public static final java.lang.String INT32 - See Also:
- Constant Field Values
 
 - 
INT64public static final java.lang.String INT64 - See Also:
- Constant Field Values
 
 - 
INT128public static final java.lang.String INT128 - See Also:
- Constant Field Values
 
 - 
FLOAT128public static final java.lang.String FLOAT128 - See Also:
- Constant Field Values
 
 - 
LONG_DOUBLEpublic static final java.lang.String LONG_DOUBLE - See Also:
- Constant Field Values
 
 - 
PTR64public static final java.lang.String PTR64 - See Also:
- Constant Field Values
 
 - 
STRINGpublic static final java.lang.String STRING - See Also:
- Constant Field Values
 
 - 
UNDEFINEDpublic static final java.lang.String UNDEFINED - See Also:
- Constant Field Values
 
 - 
UNALIGNEDpublic static final java.lang.String UNALIGNED - See Also:
- Constant Field Values
 
 - 
RESTRICTpublic static final java.lang.String RESTRICT - See Also:
- Constant Field Values
 
 - 
PRIMITIVESpublic static final java.lang.String[] PRIMITIVES 
 
- 
 - 
Method Detail- 
copypublic DemangledDataType copy() 
 - 
copyprotected void copy(DemangledDataType source, DemangledDataType destination) 
 - 
getDataTypepublic DataType getDataType(DataTypeManager dataTypeManager) Converts this demangled datatype into the corresponding Ghidra datatype.- Parameters:
- dataTypeManager- the data type manager to be searched and whose data organization should be used
- Returns:
- the Ghidra datatype corresponding to the demangled datatype
 
 - 
getPointerLevelspublic int getPointerLevels() 
 - 
incrementPointerLevelspublic void incrementPointerLevels() 
 - 
setArraypublic void setArray(int dimensions) 
 - 
getArrayDimensionspublic int getArrayDimensions() 
 - 
setClasspublic void setClass() 
 - 
setComplexpublic void setComplex() 
 - 
setEnumpublic void setEnum() 
 - 
setPointer64public void setPointer64() 
 - 
setReferencepublic void setReference() 
 - 
setSignedpublic void setSigned() 
 - 
setStructpublic void setStruct() 
 - 
setTemplatepublic void setTemplate() 
 - 
setUnionpublic void setUnion() 
 - 
setCoclasspublic void setCoclass() 
 - 
setCointerfacepublic void setCointerface() 
 - 
setUnsignedpublic void setUnsigned() 
 - 
setUnalignedpublic void setUnaligned() 
 - 
isUnalignedpublic boolean isUnaligned() 
 - 
setVarArgspublic void setVarArgs() 
 - 
setEnumTypepublic void setEnumType(java.lang.String enumType) 
 - 
setRestrictpublic void setRestrict() 
 - 
isRestrictpublic boolean isRestrict() 
 - 
isArraypublic boolean isArray() 
 - 
isClasspublic boolean isClass() 
 - 
isComplexpublic boolean isComplex() 
 - 
isEnumpublic boolean isEnum() 
 - 
isPointerpublic boolean isPointer() 
 - 
isPointer64public boolean isPointer64() 
 - 
isReferencepublic boolean isReference() 
 - 
isSignedpublic boolean isSigned() 
 - 
isStructpublic boolean isStruct() 
 - 
isTemplatepublic boolean isTemplate() 
 - 
isUnionpublic boolean isUnion() 
 - 
isCoclasspublic boolean isCoclass() 
 - 
isCointerfacepublic boolean isCointerface() 
 - 
isUnsignedpublic boolean isUnsigned() 
 - 
isVarArgspublic boolean isVarArgs() 
 - 
isVoidpublic boolean isVoid() 
 - 
setEnumTypepublic java.lang.String setEnumType() 
 - 
getBasedNamepublic java.lang.String getBasedName() 
 - 
setBasedNamepublic void setBasedName(java.lang.String basedName) 
 - 
getMemberScopepublic java.lang.String getMemberScope() 
 - 
setMemberScopepublic void setMemberScope(java.lang.String memberScope) 
 - 
isPrimitivepublic boolean isPrimitive() 
 - 
toSignaturepublic java.lang.String toSignature() - Overrides:
- toSignaturein class- DemangledType
 
 - 
toStringpublic java.lang.String toString() - Overrides:
- toStringin class- DemangledType
 
 
- 
 
-