Class AbstractInstructionManager<T extends IInstruction>
java.lang.Object
com.pnfsoftware.jeb.core.units.code.asm.processor.AbstractInstructionManager<T>
- All Implemented Interfaces:
CFBytesTrie.IKeyExtractor<T>
public abstract class AbstractInstructionManager<T extends IInstruction>
extends Object
implements CFBytesTrie.IKeyExtractor<T>
A skeleton class used to create instruction managers.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected byte[]buildKey(BytesBlock block) voidbyte[]protected abstract TfindInstruction(BytesBlock block) getInstruction(BytesBlock block) protected static StringgetUndefinedMessage(byte[] code) protected static StringgetUnpredictableMessage(byte[] code, String mnemonic) protected static voidraiseUndefined(byte[] code) protected TretrieveInstructionFromCache(T instruction) protected booleanuseCache(BytesBlock block)
-
Constructor Details
-
AbstractInstructionManager
public AbstractInstructionManager()
-
-
Method Details
-
getInstruction
- Throws:
ProcessorException
-
retrieveInstructionFromCache
-
findInstruction
- Throws:
ProcessorException
-
useCache
-
buildKey
-
raiseUndefined
- Throws:
ProcessorException
-
getUndefinedMessage
-
getUnpredictableMessage
-
extract
- Specified by:
extractin interfaceCFBytesTrie.IKeyExtractor<T extends IInstruction>
-
clearCache
public void clearCache()
-