Interface Demangled
- All Known Implementing Classes:
AbstractDemangledFunctionDefinitionDataType
,DemangledAddressTable
,DemangledDataType
,DemangledFunction
,DemangledFunctionIndirect
,DemangledFunctionPointer
,DemangledFunctionReference
,DemangledLabel
,DemangledLambda
,DemangledList
,DemangledNamespaceNode
,DemangledObject
,DemangledString
,DemangledStructure
,DemangledThunk
,DemangledType
,DemangledUnknown
,DemangledVariable
DemangledObject
s and DemangledType
s
This class and its children have many overlapping concepts that we wish to refine at a future date. Below is a listing of known uses:
Method | Description |
---|---|
setMangledContext(MangledContext)
|
Sets the mangled context in use since version 11.3. |
getMangledContext()
|
The mangled context in use since version 11.3. |
getName()
|
A 'safe' name that is the getDemangledName() , but with some characters
changed to be valid for use within Ghidra.
|
getDemangledName()
|
The unmodified name that was set upon this object. |
getNamespaceName()
|
The 'safe' name of this object when it is used as a namespace name. This usually has
parameter and template information. Further, some characters within templates and
function signatures are replaced, such as spaces and namespace separators.
Given this full demangled string: |
getNamespaceString()
|
This returns the unmodified name of this item, along with any unmodified parent
namespace names, all separated by a namespace delimiter. Unlike
getNamespaceName() , the spaces and internal namespace tokens will not be
replaced.
Given this full demangled string: |
getSignature()
|
Returns the complete string form of this object, with most known attributes. For functions, this will be a complete signature. |
getOriginalDemangled()
|
The original unmodified demangled string. This is the full demangled string returned from the demangling service. |
-
Method Summary
Modifier and TypeMethodDescriptionReturns the unmodified demangled name of this object.default MangledContext
Returns the mangled contextReturns the original mangled stringgetName()
Returns the demangled name of this object.Returns the namespace containing this demangled objectReturns this object's namespace name without the fully-qualified parent path.Returns a representation of this object as fully-qualified namespace.Returns the original demangled string returned by the demangling serviceGenerates a complete representation of this object to include all know attributes of this objectdefault void
setMangledContext
(MangledContext mangledContextArg) Sets the mangled contextvoid
Sets the name for this objectvoid
Sets the namespace of this demangled object
-
Method Details
-
setMangledContext
Sets the mangled contextThis method currently has a
default
implementation so not to break existing class implementations. However, at some point thedefault
tag and implementation, which is empty, will be removed. Thus, all implementers need to implement this method before the removal of thedefault
- Parameters:
mangledContextArg
- the mangled context- Since:
- 11.3
-
getMangledContext
Returns the mangled contextThis method currently has a
default
implementation so not to break existing class implementations. However, at some point thedefault
tag and implementation, which returns null, will be removed. Thus, all implementers need to implement this method before the removal of thedefault
- Returns:
- the context or null if no context
- Since:
- 11.3
-
getMangledString
String getMangledString()Returns the original mangled string- Returns:
- the string
-
getOriginalDemangled
String getOriginalDemangled()Returns the original demangled string returned by the demangling service- Returns:
- the original demangled string
-
getName
String getName()Returns the demangled name of this object. NOTE: unsupported symbol characters, like whitespace, will be converted to an underscore.- Returns:
- name of this DemangledObject with unsupported characters converted to underscore
- See Also:
-
setName
Sets the name for this object- Parameters:
name
- the name
-
getDemangledName
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
-
getNamespace
Demangled getNamespace()Returns the namespace containing this demangled object- Returns:
- the namespace containing this demangled object
-
setNamespace
Sets the namespace of this demangled object- Parameters:
ns
- the namespace
-
getNamespaceString
String getNamespaceString()Returns a representation of this object as fully-qualified namespace. The value returned here may have had some special characters replaced, such as ' ' replaced with '_' and '::' replaced with '--'.- Returns:
- the full namespace
-
getNamespaceName
String getNamespaceName()Returns this object's namespace name without the fully-qualified parent path. The value returned here may have had some special characters replaced, such as ' ' replaced with '_' and '::' replaced with '--'.- Returns:
- the name
-
getSignature
String getSignature()Generates a complete representation of this object to include all know attributes of this object- Returns:
- the signature
-