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 TypeMethodDescriptionbooleanintgetFlags()Get the symbol flags.longGet the symbol identifier.getName()Get the symbol name.intRetrieve the optional processor mode associated to this symbol, if the address points to code.longGet the base-relative address of the description of the symbol.longGet the base-relative address of the symbol.longGet the size of the symbol.getType()Get the symbol type.inthashCode()booleanChecks if the symbol is neither exported nor imported.voidsetFlags(int flags) voidsetIdentifier(long identifier) voidvoidsetProcessorMode(int procMode) voidsetRelativeAddress(long address) voidsetSymbolDataTypeInformation(String information) voidsetSymbolRelativeAddress(long address) voidsetSymbolSize(long size) voidsetType(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:ISymbolInformationGet the symbol type.- Specified by:
getTypein interfaceISymbolInformation- Returns:
- the type
-
setType
-
getFlags
public int getFlags()Description copied from interface:ISymbolInformationGet the symbol flags. A valid combination ofFLAG_xxx.- Specified by:
getFlagsin interfaceISymbolInformation- Returns:
- the flags
-
setFlags
public void setFlags(int flags) -
getIdentifier
public long getIdentifier()Description copied from interface:ISymbolInformationGet the symbol identifier. Optional.- Specified by:
getIdentifierin interfaceISymbolInformation- Returns:
- the symbol identifier
-
setIdentifier
public void setIdentifier(long identifier) -
getName
Description copied from interface:ISymbolInformationGet 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:
getNamein interfaceISymbolInformation- Returns:
- the symbol name
-
setName
-
getRelativeAddress
public long getRelativeAddress()Description copied from interface:ISymbolInformationGet the base-relative address of the description of the symbol. Informative and optional.- Specified by:
getRelativeAddressin interfaceISymbolInformation- Returns:
- the base-relative address of the symbol description
-
setRelativeAddress
public void setRelativeAddress(long address) -
getSymbolRelativeAddress
public long getSymbolRelativeAddress()Description copied from interface:ISymbolInformationGet the base-relative address of the symbol.- Specified by:
getSymbolRelativeAddressin interfaceISymbolInformation- Returns:
- the symbol RVA
-
setSymbolRelativeAddress
public void setSymbolRelativeAddress(long address) -
getSymbolSize
public long getSymbolSize()Description copied from interface:ISymbolInformationGet the size of the symbol. May not be known.- Specified by:
getSymbolSizein interfaceISymbolInformation- Returns:
- the symbol size
-
setSymbolSize
public void setSymbolSize(long size) -
getSymbolDataTypeInformation
- Specified by:
getSymbolDataTypeInformationin interfaceISymbolInformation- Returns:
- may be null
-
setSymbolDataTypeInformation
-
getProcessorMode
public int getProcessorMode()Description copied from interface:ISymbolInformationRetrieve the optional processor mode associated to this symbol, if the address points to code. This value is optional, implementations may return 0.- Specified by:
getProcessorModein interfaceISymbolInformation- Returns:
- the optional processor mode (refer to
IProcessorfor 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
-