Package ghidra.app.util.demangler
Class DemanglerUtil
- java.lang.Object
-
- ghidra.app.util.demangler.DemanglerUtil
-
public class DemanglerUtil extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description DemanglerUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static DemangledType
convertToNamespaces(java.util.List<java.lang.String> names)
Converts the list of names into a namespace linked list.static DemangledObject
demangle(Program program, java.lang.String mangled)
Locates all available demanglers and checks to see if the supplied program is supported, then it attempts to demangle.static DemangledObject
demangle(java.lang.String mangled)
Locates all available demanglers, then it attempts to demangle.static void
setNamespace(DemangledType dt, DemangledType namespace)
static java.lang.String
stripSuperfluousSignatureSpaces(java.lang.String str)
Remove superfluous function signature spaces from specified string
-
-
-
Method Detail
-
demangle
public static DemangledObject demangle(java.lang.String mangled)
Locates all available demanglers, then it attempts to demangle.- Parameters:
mangled
- the mangled name- Returns:
- the demangled object or null
-
demangle
public static DemangledObject demangle(Program program, java.lang.String mangled)
Locates all available demanglers and checks to see if the supplied program is supported, then it attempts to demangle.- Parameters:
program
- the program containing the mangled namemangled
- the mangled name- Returns:
- the demangled object or null
-
convertToNamespaces
public static DemangledType convertToNamespaces(java.util.List<java.lang.String> names)
Converts the list of names into a namespace linked list. Given names = { "A", "B", "C" }, which represents "A::B::C". The following will be created "Namespace{A}->Namespace{B}->Namespace{C}" and Namespace{C} will be returned. NOTE: the list will be empty after the call.
-
stripSuperfluousSignatureSpaces
public static java.lang.String stripSuperfluousSignatureSpaces(java.lang.String str)
Remove superfluous function signature spaces from specified string- Parameters:
str
- string- Returns:
- string with unwanted spaces removed
-
setNamespace
public static void setNamespace(DemangledType dt, DemangledType namespace)
-
-