Class DemangledString

java.lang.Object
ghidra.app.util.demangler.DemangledObject
ghidra.app.util.demangler.DemangledString
All Implemented Interfaces:
Demangled

public class DemangledString extends DemangledObject
  • Constructor Details

    • DemangledString

      public DemangledString(String mangled, String originalDemangled, String name, String string, int length, boolean unicode)
      Construct demangled string.
      Parameters:
      mangled - the source mangled string
      originalDemangled - the original demangled string
      name - name associated with this object
      string - string text associated with this object or null. This is used to establish label and plate comment if specified. If null, name will be used as symbol name.
      length - length of string or -1. Actual string data type applied currently assumes null terminated string.
      unicode - true if string is a Unicode string.
  • 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
    • applyTo

      public boolean applyTo(Program program, Address address, DemanglerOptions options, TaskMonitor monitor) throws Exception
      Overrides:
      applyTo in class DemangledObject
      Throws:
      Exception
    • getString

      public String getString()
      Returns the demangled string.
      Returns:
      the demangled string
    • getLength

      public int getLength()
      Returns the length in bytes of the demangled string.
      Returns:
      the length in bytes of the demangled string
    • isUnicode

      public boolean isUnicode()
      Returns true if the demangled string is unicode.
      Returns:
      true if the demangled string is unicode