Package org.eclipse.cdt.utils.elf.parser
Class ElfBinaryObject
java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.cdt.utils.BinaryFile
org.eclipse.cdt.utils.BinaryObjectAdapter
org.eclipse.cdt.utils.elf.parser.ElfBinaryObject
- All Implemented Interfaces:
IBinaryParser.IBinaryFile
,IBinaryParser.IBinaryObject
,org.eclipse.core.runtime.IAdaptable
- Direct Known Subclasses:
ElfBinaryExecutable
,ElfBinaryShared
,GNUElfBinaryObject
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter
BinaryObjectAdapter.BinaryObjectInfo
-
Field Summary
Fields inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter
NO_SYMBOLS
Fields inherited from interface org.eclipse.cdt.core.IBinaryParser.IBinaryFile
ARCHIVE, CORE, EXECUTABLE, OBJECT, SHARED
-
Constructor Summary
ConstructorDescriptionElfBinaryObject
(IBinaryParser parser, org.eclipse.core.runtime.IPath p, int type) ElfBinaryObject
(IBinaryParser parser, org.eclipse.core.runtime.IPath p, AR.ARHeader h) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addSymbols
(Elf.Symbol[] array, int type, List<Symbol> list) <T> T
getAdapter
(Class<T> adapter) protected BinaryObjectAdapter.BinaryObjectInfo
getCPU()
CPU nameprotected ElfHelper
getName()
The name of the objectSymbols of the objectboolean
The endianprotected void
loadAll()
protected void
loadInfo()
protected void
protected void
loadSymbols
(ElfHelper helper) Methods inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter
getBSS, getData, getNeededSharedLibs, getSoName, getSymbol, getText, hasDebug, toString
Methods inherited from class org.eclipse.cdt.utils.BinaryFile
getBinaryParser, getPath, getType, hasChanged
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.cdt.core.IBinaryParser.IBinaryFile
getBinaryParser, getPath, getType
-
Constructor Details
-
ElfBinaryObject
-
ElfBinaryObject
-
-
Method Details
-
getName
Description copied from interface:IBinaryParser.IBinaryObject
The name of the object- Specified by:
getName
in interfaceIBinaryParser.IBinaryObject
- Overrides:
getName
in classBinaryObjectAdapter
- Returns:
- String
- See Also:
-
getContents
- Specified by:
getContents
in interfaceIBinaryParser.IBinaryFile
- Overrides:
getContents
in classBinaryFile
- Returns:
- the binary contents.
- Throws:
IOException
- See Also:
-
getSymbols
Description copied from interface:IBinaryParser.IBinaryObject
Symbols of the object- Specified by:
getSymbols
in interfaceIBinaryParser.IBinaryObject
- Specified by:
getSymbols
in classBinaryObjectAdapter
- Returns:
- ISymbol[] arrays of symbols
- See Also:
-
getBinaryObjectInfo
- Specified by:
getBinaryObjectInfo
in classBinaryObjectAdapter
-
getElfHelper
- Throws:
IOException
-
loadAll
- Throws:
IOException
-
loadInfo
- Throws:
IOException
-
loadInfo
- Throws:
IOException
-
loadSymbols
- Throws:
IOException
-
addSymbols
-
getAdapter
- Specified by:
getAdapter
in interfaceorg.eclipse.core.runtime.IAdaptable
- Overrides:
getAdapter
in classorg.eclipse.core.runtime.PlatformObject
-
getAddressFactory
- Specified by:
getAddressFactory
in interfaceIBinaryParser.IBinaryObject
- Specified by:
getAddressFactory
in classBinaryObjectAdapter
-
isLittleEndian
public boolean isLittleEndian()Description copied from interface:IBinaryParser.IBinaryObject
The endian- Specified by:
isLittleEndian
in interfaceIBinaryParser.IBinaryObject
- Overrides:
isLittleEndian
in classBinaryObjectAdapter
- Returns:
- boolean - true for little endian
- See Also:
-
getCPU
Description copied from interface:IBinaryParser.IBinaryObject
CPU name- Specified by:
getCPU
in interfaceIBinaryParser.IBinaryObject
- Overrides:
getCPU
in classBinaryObjectAdapter
- Returns:
- String - cpu name
- See Also:
-