Class SymbolInformation
java.lang.Object
com.pnfsoftware.jeb.core.units.codeobject.SymbolInformation
- All Implemented Interfaces:
ISymbolInformation
Standard implementation of
ISymbolInformation
.-
Field Summary
Fields inherited from interface com.pnfsoftware.jeb.core.units.codeobject.ISymbolInformation
FLAG_ABSOLUTE, FLAG_EXPORTED, FLAG_FUNCTION_CODE_CONTIGUOUS, FLAG_IMPORTED, FLAG_METADATA
-
Constructor Summary
ConstructorsConstructorDescriptionSymbolInformation
(SymbolType type, int flags, long identifier, String name, long address, long symbolAddress, long symbolSize) -
Method Summary
Modifier and TypeMethodDescriptionboolean
int
getFlags()
Get the symbol flags.long
Get the symbol identifier.getName()
Get the symbol name.int
Retrieve the optional processor mode associated to this symbol, if the address points to code.long
Get the base-relative address of the description of the symbol.long
Get the base-relative address of the symbol.long
Get the size of the symbol.getType()
Get the symbol type.int
hashCode()
boolean
Checks if the symbol is neither exported nor imported.void
setFlags
(int flags) void
setIdentifier
(long identifier) void
void
setProcessorMode
(int procMode) void
setRelativeAddress
(long address) void
setSymbolDataTypeInformation
(String information) void
setSymbolRelativeAddress
(long address) void
setSymbolSize
(long size) void
setType
(SymbolType type) toString()
-
Constructor Details
-
SymbolInformation
public SymbolInformation(SymbolType type, int flags, long identifier, String name, long address, long symbolAddress, long symbolSize)
-
-
Method Details
-
getType
Description copied from interface:ISymbolInformation
Get the symbol type.- Specified by:
getType
in interfaceISymbolInformation
- Returns:
- the type
-
setType
-
getFlags
public int getFlags()Description copied from interface:ISymbolInformation
Get the symbol flags. A valid combination ofFLAG_xxx
.- Specified by:
getFlags
in interfaceISymbolInformation
- Returns:
- the flags
-
setFlags
public void setFlags(int flags) -
getIdentifier
public long getIdentifier()Description copied from interface:ISymbolInformation
Get the symbol identifier. Optional.- Specified by:
getIdentifier
in interfaceISymbolInformation
- Returns:
- the symbol identifier
-
setIdentifier
public void setIdentifier(long identifier) -
getName
Description copied from interface:ISymbolInformation
Get the symbol name.Special syntax for imported functions: the function name may be prefixed by the library name that contains it. A bang character is used as a separator. Example:
kernel32.dll!Sleep
Note: the method name may be mangled; it may be fully qualified. The library name is optional; its extension is optional (eg, .dll, .so); it may be a full path.- Specified by:
getName
in interfaceISymbolInformation
- Returns:
- the symbol name
-
setName
-
getRelativeAddress
public long getRelativeAddress()Description copied from interface:ISymbolInformation
Get the base-relative address of the description of the symbol. Informative and optional.- Specified by:
getRelativeAddress
in interfaceISymbolInformation
- Returns:
- the base-relative address of the symbol description
-
setRelativeAddress
public void setRelativeAddress(long address) -
getSymbolRelativeAddress
public long getSymbolRelativeAddress()Description copied from interface:ISymbolInformation
Get the base-relative address of the symbol.- Specified by:
getSymbolRelativeAddress
in interfaceISymbolInformation
- Returns:
- the symbol RVA
-
setSymbolRelativeAddress
public void setSymbolRelativeAddress(long address) -
getSymbolSize
public long getSymbolSize()Description copied from interface:ISymbolInformation
Get the size of the symbol. May not be known.- Specified by:
getSymbolSize
in interfaceISymbolInformation
- Returns:
- the symbol size
-
setSymbolSize
public void setSymbolSize(long size) -
getSymbolDataTypeInformation
- Specified by:
getSymbolDataTypeInformation
in interfaceISymbolInformation
- Returns:
- may be null
-
setSymbolDataTypeInformation
-
getProcessorMode
public int getProcessorMode()Description copied from interface:ISymbolInformation
Retrieve the optional processor mode associated to this symbol, if the address points to code. This value is optional, implementations may return 0.- Specified by:
getProcessorMode
in interfaceISymbolInformation
- Returns:
- the optional processor mode (refer to
IProcessor
for standard values)
-
setProcessorMode
public void setProcessorMode(int procMode) -
isInternal
public boolean isInternal()Checks if the symbol is neither exported nor imported. -
toString
-
hashCode
public int hashCode() -
equals
-