Package ghidra.pcode.exec
Class BytesPcodeExecutorStatePiece
java.lang.Object
ghidra.pcode.exec.AbstractLongOffsetPcodeExecutorStatePiece<byte[],byte[],BytesPcodeExecutorStateSpace<Void>>
ghidra.pcode.exec.AbstractBytesPcodeExecutorStatePiece<BytesPcodeExecutorStateSpace<Void>>
ghidra.pcode.exec.BytesPcodeExecutorStatePiece
- All Implemented Interfaces:
PcodeExecutorStatePiece<byte[],
byte[]>
public class BytesPcodeExecutorStatePiece
extends AbstractBytesPcodeExecutorStatePiece<BytesPcodeExecutorStateSpace<Void>>
A plain concrete state piece without any backing objects
-
Nested Class Summary
Nested classes/interfaces inherited from class ghidra.pcode.exec.AbstractBytesPcodeExecutorStatePiece
AbstractBytesPcodeExecutorStatePiece.StateMemBuffer
Nested classes/interfaces inherited from class ghidra.pcode.exec.AbstractLongOffsetPcodeExecutorStatePiece
AbstractLongOffsetPcodeExecutorStatePiece.AbstractSpaceMap<S>, AbstractLongOffsetPcodeExecutorStatePiece.CacheingSpaceMap<B,
S>, AbstractLongOffsetPcodeExecutorStatePiece.SimpleSpaceMap<S> Nested classes/interfaces inherited from interface ghidra.pcode.exec.PcodeExecutorStatePiece
PcodeExecutorStatePiece.Reason
-
Field Summary
Fields inherited from class ghidra.pcode.exec.AbstractBytesPcodeExecutorStatePiece
spaceMap
Fields inherited from class ghidra.pcode.exec.AbstractLongOffsetPcodeExecutorStatePiece
addressArithmetic, arithmetic, language, uniqueSpace
-
Constructor Summary
ModifierConstructorDescriptionBytesPcodeExecutorStatePiece
(Language language) Construct a state for the given languageprotected
BytesPcodeExecutorStatePiece
(Language language, AbstractLongOffsetPcodeExecutorStatePiece.AbstractSpaceMap<BytesPcodeExecutorStateSpace<Void>> spaceMap) -
Method Summary
Modifier and TypeMethodDescriptionfork()
Create a deep copy of this stateprotected AbstractLongOffsetPcodeExecutorStatePiece.AbstractSpaceMap
<BytesPcodeExecutorStateSpace<Void>> A factory method for this state's space map.Methods inherited from class ghidra.pcode.exec.AbstractBytesPcodeExecutorStatePiece
clear, getConcreteBuffer, getForSpace, getFromSpace, getRegisterValuesFromSpace, setInSpace
Methods inherited from class ghidra.pcode.exec.AbstractLongOffsetPcodeExecutorStatePiece
getAddressArithmetic, getArithmetic, getFromNullSpace, getLanguage, getRegisterValues, getUnique, getVar, getVar, setUnique, setVar, setVar
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface ghidra.pcode.exec.PcodeExecutorStatePiece
checkRange, getVar, getVar, getVar, quantizeOffset, setVar, setVar, setVar
-
Constructor Details
-
BytesPcodeExecutorStatePiece
Construct a state for the given language- Parameters:
language
- the language (used for its memory model)
-
BytesPcodeExecutorStatePiece
protected BytesPcodeExecutorStatePiece(Language language, AbstractLongOffsetPcodeExecutorStatePiece.AbstractSpaceMap<BytesPcodeExecutorStateSpace<Void>> spaceMap)
-
-
Method Details
-
fork
Description copied from interface:PcodeExecutorStatePiece
Create a deep copy of this state- Returns:
- the copy
-
newSpaceMap
protected AbstractLongOffsetPcodeExecutorStatePiece.AbstractSpaceMap<BytesPcodeExecutorStateSpace<Void>> newSpaceMap()Description copied from class:AbstractBytesPcodeExecutorStatePiece
A factory method for this state's space map.Because most of the special logic for extensions is placed in the "state space," i.e., an object assigned to a particular address space in the state's language, this factory method must provide the map to create and maintain those spaces. That map will in turn be the factory of the spaces themselves, allowing extensions to provide additional read/write logic.
- Specified by:
newSpaceMap
in classAbstractBytesPcodeExecutorStatePiece<BytesPcodeExecutorStateSpace<Void>>
- Returns:
- the new space map
-