Package ghidra.program.model.pcode
Class MappedEntry
java.lang.Object
ghidra.program.model.pcode.SymbolEntry
ghidra.program.model.pcode.MappedEntry
- Direct Known Subclasses:
MappedDataEntry
A normal mapping of a HighSymbol to a particular Address, consuming a set number of bytes
-
Field Summary
Fields inherited from class ghidra.program.model.pcode.SymbolEntry
pcaddr, symbol
-
Constructor Summary
ConstructorDescriptionMappedEntry
(HighSymbol sym) For use with restoreXMLMappedEntry
(HighSymbol sym, VariableStorage store, Address addr) Construct given a symbol, storage, and first-use Address -
Method Summary
Modifier and TypeMethodDescriptionvoid
Decode this entry from the stream.void
Encode this entry as (a set of) elements to the given streamint
Return one of - MutabilitySettingsDefinition.NORMAL - MutabilitySettingsDefinition.VOLATILE - MutabilitySettingsDefinition.CONSTANTstatic int
getMutabilityOfAddress
(Address addr, Program program) Get the underlying mutability setting of an Address based on the Program configuration and the MemoryBlock.int
getSize()
Get the number of bytes consumed by the symbol when using this storageGet the storage associated with this particular mapping of the SymbolMethods inherited from class ghidra.program.model.pcode.SymbolEntry
decodeRangeList, encodeRangelist, getPCAdress
-
Field Details
-
storage
-
-
Constructor Details
-
MappedEntry
For use with restoreXML- Parameters:
sym
- is the owning symbol
-
MappedEntry
Construct given a symbol, storage, and first-use Address- Parameters:
sym
- is the given symbolstore
- is the given storageaddr
- is the first-use Address (or null)
-
-
Method Details
-
decode
Description copied from class:SymbolEntry
Decode this entry from the stream. Typically more than one element is consumed.- Specified by:
decode
in classSymbolEntry
- Parameters:
decoder
- is the stream decoder- Throws:
DecoderException
- for invalid encodings
-
encode
Description copied from class:SymbolEntry
Encode this entry as (a set of) elements to the given stream- Specified by:
encode
in classSymbolEntry
- Parameters:
encoder
- is the stream encoder- Throws:
IOException
- for errors in the underlying stream
-
getStorage
Description copied from class:SymbolEntry
Get the storage associated with this particular mapping of the Symbol- Specified by:
getStorage
in classSymbolEntry
- Returns:
- the storage object
-
getSize
public int getSize()Description copied from class:SymbolEntry
Get the number of bytes consumed by the symbol when using this storage- Specified by:
getSize
in classSymbolEntry
- Returns:
- the size of this entry
-
getMutability
public int getMutability()Description copied from class:SymbolEntry
Return one of - MutabilitySettingsDefinition.NORMAL - MutabilitySettingsDefinition.VOLATILE - MutabilitySettingsDefinition.CONSTANT- Specified by:
getMutability
in classSymbolEntry
- Returns:
- the mutability setting
-
getMutabilityOfAddress
Get the underlying mutability setting of an Address based on the Program configuration and the MemoryBlock. Ignore any overrides of Data at the address.- Parameters:
addr
- is the Addressprogram
- is the Program containing the Address- Returns:
- the mutability
-