Class NList

    • Constructor Detail

      • NList

        public NList()
        DO NOT USE THIS CONSTRUCTOR, USE create*(GenericFactory ...) FACTORY METHODS INSTEAD.
    • Method Detail

      • initString

        public void initString​(FactoryBundledWithBinaryReader reader,
                               long stringTableOffset)
        Initialize the string from the string table.

        You MUST call this method after the NLIST element is created!

        Reading a large NList table can cause a large performance issue if the strings are initialized as the NList entry is created. The string table indexes are scattered. Initializing the strings linearly from the string table is much faster.

        Parameters:
        reader -
        stringTableOffset - offset of the string table
      • toDataType

        public DataType toDataType()
                            throws DuplicateNameException,
                                   java.io.IOException
        Description copied from interface: StructConverter
        Returns a structure datatype representing the contents of the implementor of this interface.

        For example, given:

         class A {
             int foo;
             double bar;
         }
         

        The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

        Specified by:
        toDataType in interface StructConverter
        Returns:
        returns a structure datatype representing the implementor of this interface
        Throws:
        DuplicateNameException - when a datatype of the same name already exists
        java.io.IOException
        See Also:
        StructureDataType
      • getString

        public java.lang.String getString()
        Returns the symbol string defined at the symbol table command string table offset plus n_strx.
        Returns:
        the symbol string
      • getStringTableIndex

        public int getStringTableIndex()
        Returns the index into the string table.
        Returns:
        the index into the string table
      • getType

        public byte getType()
        Returns the symbol type flag.
        Returns:
        the symbol type flag
      • isTypeUndefined

        public boolean isTypeUndefined()
      • isTypeAbsolute

        public boolean isTypeAbsolute()
      • isTypePreboundUndefined

        public boolean isTypePreboundUndefined()
      • isIndirect

        public boolean isIndirect()
      • isSymbolicDebugging

        public boolean isSymbolicDebugging()
      • isPrivateExternal

        public boolean isPrivateExternal()
      • isExternal

        public boolean isExternal()
      • isLazyBind

        public boolean isLazyBind()
      • isThumbSymbol

        public boolean isThumbSymbol()
      • getSection

        public byte getSection()
        An integer specifying the number of the section that this symbol can be found in, or NO_SECT if symbol is not found in a section of this image.
        Returns:
        the number of the section
      • getDescription

        public short getDescription()
        A 16-bit value providing additional information about this symbol.
        Returns:
        a 16-bit value providing additional information about this symbol
      • getValue

        public long getValue()
        An integer that contains the value of this symbol. The format of this value is different for each type of symbol.
        Returns:
        the value of this symbol
      • getLibraryOrdinal

        public int getLibraryOrdinal()
      • toString

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