Package ghidra.app.util.demangler
Class DemangledType
- java.lang.Object
- 
- ghidra.app.util.demangler.DemangledType
 
- 
- Direct Known Subclasses:
- DemangledDataType,- DemangledFunctionType
 
 public class DemangledType extends java.lang.Object
- 
- 
Field SummaryFields Modifier and Type Field Description protected DemangledTypenamespaceprotected java.lang.StringoriginalMangledprotected DemangledTemplatetemplate
 - 
Constructor SummaryConstructors Constructor Description DemangledType(java.lang.String name)
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DemangledTypeconvertToNamespace(GenericDemangledType otherNamespace)Takes aDemangledTypewith a name that contains namespace elements (such as Foo::Bar) and breaks it into a hierarchy of types where each type represents one item in the list of namespace elements.java.lang.StringgetDemangledName()Returns the unmodified demangled name of this object.java.lang.StringgetName()Get the name of this type.DemangledTypegetNamespace()java.lang.StringgetOriginalMangled()Sets the original mangled nameDemangledTemplategetTemplate()booleanisConst()booleanisFunction()booleanisVolatile()voidsetConst()voidsetName(java.lang.String name)Sets the name of the demangled type object.voidsetNamespace(DemangledType namespace)voidsetOriginalMangled(java.lang.String mangled)Sets the original mangled namevoidsetTemplate(DemangledTemplate template)voidsetVolatile()java.lang.StringtoNamespace()java.lang.StringtoSignature()java.lang.StringtoString()
 
- 
- 
- 
Field Detail- 
originalMangledprotected java.lang.String originalMangled 
 - 
namespaceprotected DemangledType namespace 
 - 
templateprotected DemangledTemplate template 
 
- 
 - 
Method Detail- 
convertToNamespacepublic static DemangledType convertToNamespace(GenericDemangledType otherNamespace) Takes aDemangledTypewith a name that contains namespace elements (such as Foo::Bar) and breaks it into a hierarchy of types where each type represents one item in the list of namespace elements.- Parameters:
- demangledType- the type to split
- Returns:
- the original type if the name does not represent a namespace; a new type that contains a child, that contains a child and so on, representing the split-up of the original namespace string.
 
 - 
getDemangledNamepublic java.lang.String getDemangledName() Returns the unmodified demangled name of this object. This name may contain whitespace and other characters not supported for symbol or data type creation. SeegetName()for the same name modified for use within Ghidra.- Returns:
- name of this DemangledObject
 
 - 
getNamepublic java.lang.String getName() Get the name of this type. NOTE: unsupported symbol characters, like whitespace, will be converted to an underscore.- Returns:
- name of this DemangledType suitable for namespace creation.
 
 - 
setNamepublic void setName(java.lang.String name) Sets the name of the demangled type object.- Parameters:
- name- the new name
 
 - 
setOriginalMangledpublic void setOriginalMangled(java.lang.String mangled) Sets the original mangled name- Parameters:
- mangled- the original mangled name
 
 - 
getOriginalMangledpublic java.lang.String getOriginalMangled() Sets the original mangled name- Parameters:
- mangled- the original mangled name
 
 - 
isConstpublic boolean isConst() 
 - 
setConstpublic void setConst() 
 - 
isFunctionpublic boolean isFunction() 
 - 
isVolatilepublic boolean isVolatile() 
 - 
setVolatilepublic void setVolatile() 
 - 
getNamespacepublic DemangledType getNamespace() 
 - 
setNamespacepublic void setNamespace(DemangledType namespace) 
 - 
getTemplatepublic DemangledTemplate getTemplate() 
 - 
setTemplatepublic void setTemplate(DemangledTemplate template) 
 - 
toSignaturepublic java.lang.String toSignature() 
 - 
toNamespacepublic java.lang.String toNamespace() 
 - 
toStringpublic java.lang.String toString() - Overrides:
- toStringin class- java.lang.Object
 
 
- 
 
-