Class DemanglerOptions

java.lang.Object
ghidra.app.util.demangler.DemanglerOptions

public class DemanglerOptions extends Object
A simple class to contain the various settings for demangling
  • Constructor Details

    • DemanglerOptions

      public DemanglerOptions()
    • DemanglerOptions

      public DemanglerOptions(DemanglerOptions copy)
  • Method Details

    • applySignature

      public boolean applySignature()
      Checks if the apply signature option is currently set
      Returns:
      true if set to apply function signatures that are demangled
    • setApplySignature

      public void setApplySignature(boolean applySignature)
      Set the option to apply function signatures that are demangled
      Parameters:
      applySignature - true to apply function signatures that are demangled
    • doDisassembly

      public boolean doDisassembly()
      Checks if the option to perform disassembly for known data structures (like functions) when demangling is set
      Returns:
      true if the option is set
    • applyCallingConvention

      public boolean applyCallingConvention()
      Checks if the apply function signature calling convention option is currently set
      Returns:
      true if set to apply calling conventions
    • setApplyCallingConvention

      public void setApplyCallingConvention(boolean applyCallingConvention)
      Set the option to apply function signature calling conventions
      Parameters:
      applyCallingConvention - true to apply calling conventions
    • setDoDisassembly

      public void setDoDisassembly(boolean doDisassembly)
      Sets the option to perform disassembly for known data structures (like functions) when demangling
      Parameters:
      doDisassembly - true to perform disassembly when demangling
    • demangleOnlyKnownPatterns

      public boolean demangleOnlyKnownPatterns()
      Checks if the option to only demangle known mangled patterns is set
      Returns:
      true if only known mangled patterns will be demangled
    • setDemangleOnlyKnownPatterns

      public void setDemangleOnlyKnownPatterns(boolean demangleOnlyKnownPatterns)
      Sets the option to only demangle known mangled patterns. Setting this to false causes most symbols to be demangled, which may result in some symbols getting demangled that were not actually mangled symbols.

      Generally, a demangler will report an error if a symbol fails to demangle. Hence, clients can use this flag to prevent such errors, signalling to the demangler to only attempt those symbols that have a known start pattern. If the known start pattern list becomes comprehensive, then this flag can go away.

      Parameters:
      demangleOnlyKnownPatterns - true to only demangle known mangled patterns
    • toString

      public String toString()
      Overrides:
      toString in class Object