Class DWARFNameInfo


  • public class DWARFNameInfo
    extends java.lang.Object
    A immutable hierarchical path based name implementation that can be viewed as either namespaces or categorypaths.

    • Method Detail

      • isRoot

        public boolean isRoot()
      • getOrganizationalCategoryPath

        public CategoryPath getOrganizationalCategoryPath()
      • getName

        public java.lang.String getName()
      • replaceName

        public DWARFNameInfo replaceName​(java.lang.String newName,
                                         java.lang.String newOriginalName)
      • asCategoryPath

        public CategoryPath asCategoryPath()
        Converts this object into an equiv CategoryPath.
        Returns:
        CategoryPath: "/organizational_cat_path/namespace1/namespace2/obj_name"
      • asDataTypePath

        public DataTypePath asDataTypePath()
        Converts this object into an equiv DataTypePath.
        Returns:
        DataTypePath: { "/organizational_cat_path/namespace1/namespace2", "obj_name" }
      • asNamespace

        public Namespace asNamespace​(Program program)
        Converts this object into an equiv Ghidra Namespace, omitting the organizational category path (which only applies to DataTypes).
        Parameters:
        program - Program where the namespace lives.
        Returns:
        Namespace: "ROOT::namespace1::namespace2::obj_name"
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • isAnon

        public boolean isAnon()
      • getOriginalName

        public java.lang.String getOriginalName()
      • isNameModified

        public boolean isNameModified()
        Returns true if this instance's name value is different than its original form.

        Returns:
      • createChild

        public DWARFNameInfo createChild​(java.lang.String childOriginalName,
                                         java.lang.String childName,
                                         SymbolType childType)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object