Class MachOBinaryObject64
java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.cdt.utils.BinaryFile
org.eclipse.cdt.utils.BinaryObjectAdapter
org.eclipse.cdt.utils.macho.parser.MachOBinaryObject64
- All Implemented Interfaces:
IBinaryParser.IBinaryFile
,IBinaryParser.IBinaryObject
,org.eclipse.core.runtime.IAdaptable
- Direct Known Subclasses:
MachOBinaryExecutable64
,MachOBinaryShared64
MachOBinaryObject64
- Since:
- 5.2
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter
BinaryObjectAdapter.BinaryObjectInfo
-
Field Summary
Modifier and TypeFieldDescriptionprotected IAddressFactory
protected MachO64.Attribute
protected AR.ARHeader
protected boolean
protected String[]
protected MachOHelper64.Sizes
protected String
protected IBinaryParser.ISymbol[]
protected long
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
ConstructorDescriptionMachOBinaryObject64
(IBinaryParser parser, org.eclipse.core.runtime.IPath path, int type) MachOBinaryObject64
(IBinaryParser parser, org.eclipse.core.runtime.IPath path, AR.ARHeader header) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
<T> T
getAdapter
(Class<T> adapter) protected BinaryObjectAdapter.BinaryObjectInfo
long
getBSS()
protected CPPFilt
getCPU()
CPU namelong
getData()
protected MachOHelper64
getName()
The name of the objectString[]
Symbo at this address.Symbols of the objectlong
getText()
protected boolean
boolean
hasDebug()
True if the binary contains debug informationprotected MachO64.Attribute
protected String[]
protected MachOHelper64.Sizes
protected String
protected IBinaryParser.ISymbol[]
boolean
The endianprotected void
protected IBinaryParser.ISymbol[]
loadSymbols
(MachOHelper64 helper) Methods inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter
toString
Methods inherited from class org.eclipse.cdt.utils.BinaryFile
getBinaryParser, getPath, getType
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
-
Field Details
-
header
-
addressFactory
-
attributes
-
sizes
-
symbols
-
soname
-
needed
-
timeStamp
protected long timeStamp -
is64
protected boolean is64
-
-
Constructor Details
-
MachOBinaryObject64
public MachOBinaryObject64(IBinaryParser parser, org.eclipse.core.runtime.IPath path, AR.ARHeader header) - Parameters:
parser
-path
-header
-
-
MachOBinaryObject64
- Parameters:
parser
-path
-type
-
-
-
Method Details
-
getBinaryObjectInfo
- Specified by:
getBinaryObjectInfo
in classBinaryObjectAdapter
-
getContents
- Specified by:
getContents
in interfaceIBinaryParser.IBinaryFile
- Overrides:
getContents
in classBinaryFile
- Returns:
- the binary contents.
- Throws:
IOException
- See Also:
-
getMachOHelper
- Throws:
IOException
-
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:
-
getAddressFactory
- Specified by:
getAddressFactory
in interfaceIBinaryParser.IBinaryObject
- Specified by:
getAddressFactory
in classBinaryObjectAdapter
-
clearCachedValues
protected void clearCachedValues() -
internalGetAttributes
-
internalGetSizes
-
internalGetSymbols
-
internalGetSoName
-
internalGetNeeded
-
loadBinaryInfo
protected void loadBinaryInfo() -
loadSymbols
- Throws:
IOException
-
getCPPFilt
-
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:
-
hasDebug
public boolean hasDebug()Description copied from interface:IBinaryParser.IBinaryObject
True if the binary contains debug information- Specified by:
hasDebug
in interfaceIBinaryParser.IBinaryObject
- Overrides:
hasDebug
in classBinaryObjectAdapter
- Returns:
- true if debug information
- See Also:
-
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:
-
getBSS
public long getBSS()- Specified by:
getBSS
in interfaceIBinaryParser.IBinaryObject
- Overrides:
getBSS
in classBinaryObjectAdapter
- See Also:
-
getData
public long getData()- Specified by:
getData
in interfaceIBinaryParser.IBinaryObject
- Overrides:
getData
in classBinaryObjectAdapter
- See Also:
-
getText
public long getText()- Specified by:
getText
in interfaceIBinaryParser.IBinaryObject
- Overrides:
getText
in classBinaryObjectAdapter
- 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:
-
getSymbol
Description copied from interface:IBinaryParser.IBinaryObject
Symbo at this address.- Specified by:
getSymbol
in interfaceIBinaryParser.IBinaryObject
- Overrides:
getSymbol
in classBinaryObjectAdapter
- Parameters:
addr
-- Returns:
- ISymbol
-
getSoName
- Overrides:
getSoName
in classBinaryObjectAdapter
- See Also:
-
hasChanged
protected boolean hasChanged()- Overrides:
hasChanged
in classBinaryFile
-
getAdapter
- Specified by:
getAdapter
in interfaceorg.eclipse.core.runtime.IAdaptable
- Overrides:
getAdapter
in classorg.eclipse.core.runtime.PlatformObject
-