Package ghidra.program.model.pcode
Class HighFunctionSymbol
java.lang.Object
ghidra.program.model.pcode.HighSymbol
ghidra.program.model.pcode.HighFunctionSymbol
A function symbol that encapsulates detailed information about a particular function
for the purposes of decompilation. The detailed model is provided by a backing HighFunction object.
-
Field Summary
Fields inherited from class ghidra.program.model.pcode.HighSymbol
category, categoryIndex, dtmanage, entryList, function, ID_BASE, name, type -
Constructor Summary
ConstructorsConstructorDescriptionHighFunctionSymbol(Address addr, int size, HighFunction function) Construct given an Address, size, and decompiler function model for the symbol. -
Method Summary
Modifier and TypeMethodDescriptionvoidEncode the symbol description as an element to the stream.Fetch the namespace owning this symbol, if it exists.booleanisGlobal()Is this symbol in the global scope or some other global namespaceMethods inherited from class ghidra.program.model.pcode.HighSymbol
addMapEntry, decode, decodeHeader, decodeMapSym, encodeHeader, encodeMapSym, getCategoryIndex, getDataType, getFirstUseOffset, getFirstWholeMap, getHighFunction, getHighVariable, getId, getMutability, getName, getPCAddress, getProgram, getSize, getStorage, getSymbol, isHiddenReturn, isIsolated, isNameLocked, isParameter, isThisPointer, isTypeLocked, setCategory, setNameLock, setTypeLock
-
Constructor Details
-
HighFunctionSymbol
Construct given an Address, size, and decompiler function model for the symbol. The Address is typically the entry point of the function but may be different if the function is getting mapped from elsewhere (i.e. the EXTERNAL space). The size is given in bytes but generally isn't the true size of the function. The size needs to make the symbol just big enough to absorb any off-cut Address queries.- Parameters:
addr- is the starting Address of the symbolsize- is the pseudo-size of the functionfunction- is the decompiler model of the function
-
-
Method Details
-
isGlobal
public boolean isGlobal()Description copied from class:HighSymbolIs this symbol in the global scope or some other global namespace- Overrides:
isGlobalin classHighSymbol- Returns:
- true if this is global
-
getNamespace
Description copied from class:HighSymbolFetch the namespace owning this symbol, if it exists.- Overrides:
getNamespacein classHighSymbol- Returns:
- the Namespace object or null
-
encode
Description copied from class:HighSymbolEncode the symbol description as an element to the stream. This does NOT save the mappings.- Overrides:
encodein classHighSymbol- Parameters:
encoder- is the stream encoder- Throws:
IOException- for errors in the underlying stream
-