Package ghidra.app.util.demangler

# Class DemangledUnknown

java.lang.Object
ghidra.app.util.demangler.DemangledObject
ghidra.app.util.demangler.DemangledUnknown

All Implemented Interfaces:
  `Demangled`

public class DemangledUnknown extends DemangledObject
An interface to represent an unknown entity that we are demangling. We want to represent it in some sort of demangled form in a plate comment, but we do not know what to lay down yet, or we haven't yet engineered the item that can be laid down. If the entity has a variable name, then we would probably make it a DemangledVariable instead of a DemangledUnknown.

- ## Field Summary

  ### Fields inherited from class ghidra.app.util.demangler.DemangledObject

  `basedName, EMPTY_STRING, isRestrict, isStatic, isThunk, isUnaligned, isVirtual, mangled, mangledContext, memberScope, namespace, NAMESPACE_SEPARATOR, originalDemangled, rawDemangled, SPACE, SPACE_PATTERN, specialPrefix, storageClass, visibility`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DemangledUnknown(String mangled, String originalDemangled, String name)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getName()`
  Returns the demangled name of this object.
  `String`
  `getSignature(boolean format)`
  Returns a complete signature for the demangled symbol.

  ### Methods inherited from class ghidra.app.util.demangler.DemangledObject

  `applyDemangledName, applyDemangledName, applyPlateCommentOnly, applyTo, applyUsingContext, createNamespace, demangledNameSuccessfully, ensureNameLength, generatePlateComment, getBasedName, getDemangledName, getErrorMessage, getMangledContext, getMangledString, getMemberScope, getNamespace, getNamespaceName, getNamespaceString, getOriginalDemangled, getRawDemangled, getSignature, getSpecialPrefix, getStorageClass, getVisibility, isAlreadyDemangled, isConst, isPointer64, isRestrict, isStatic, isThunk, isUnaligned, isVirtual, isVolatile, setBackupPlateComment, setBasedName, setConst, setErrorMessage, setMangledContext, setMemberScope, setName, setNamespace, setOriginalDemangled, setPointer64, setRawDemangledString, setRestrict, setSpecialPrefix, setStatic, setStorageClass, setThunk, setUnaligned, setVirtual, setVisibilty, setVolatile, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### DemangledUnknown

    public DemangledUnknown(String mangled, String originalDemangled, String name)

- ## Method Details

  - ### getSignature

    public String getSignature(boolean format)
    Description copied from class: `DemangledObject`
    Returns a complete signature for the demangled symbol.
    For example: "unsigned long foo" "unsigned char * ClassA::getFoo(float, short *)" "void * getBar(int **, MyStruct &)"
    Note: based on the underlying mangling scheme, the return type may or may not be specified in the signature.
    Specified by:
      `getSignature` in class `DemangledObject`
    Parameters:
      `format` - true if signature should be pretty printed
    Returns:
      a complete signature for the demangled symbol

  - ### getName

    public String getName()
    Description copied from interface: `Demangled`
    Returns the demangled name of this object. NOTE: unsupported symbol characters, like whitespace, will be converted to an underscore.
    Specified by:
      `getName` in interface `Demangled`
    Overrides:
      `getName` in class `DemangledObject`
    Returns:
      name of this DemangledObject with unsupported characters converted to underscore
    See Also:
      - `Demangled.getDemangledName()`