Class DemangledLabel

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

public class DemangledLabel extends DemangledObject
A class to represent a DemangledObject that should get represented as a Ghidra label
  • Constructor Details

    • DemangledLabel

      public DemangledLabel(String mangled, String originalDemangled, String name)
      Creates a new DemangledLabel
      Parameters:
      mangled - The mangled string
      originalDemangled - The natively demangled string
      name - The label name
  • Method Details

    • applyTo

      public boolean applyTo(Program program, Address address, DemanglerOptions options, TaskMonitor monitor) throws Exception
      Description copied from class: DemangledObject
      Apply this demangled object detail to the specified program.
      NOTE: An open Program transaction must be established prior to invoking this method.
      Overrides:
      applyTo in class DemangledObject
      Parameters:
      program - program to which demangled data should be applied.
      address - address which corresponds to this demangled object
      options - options which control how demangled data is applied
      monitor - task monitor
      Returns:
      true if successfully applied, else false
      Throws:
      Exception - if an error occurs during the apply operation
    • 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