Class AbstractNativeDecompilerExtension

java.lang.Object
com.pnfsoftware.jeb.core.AbstractPlugin
com.pnfsoftware.jeb.core.units.code.asm.decompiler.AbstractNativeDecompilerExtension
All Implemented Interfaces:
IPlugin, INativeDecompilerExtension

public abstract class AbstractNativeDecompilerExtension extends AbstractPlugin implements INativeDecompilerExtension
Skeleton for native decompiler extensions. Implementations must extend this class, they should not directly implement the extension interface.

Decompiler extensions are of two kinds:
- the primary extension, optionally provided by a decompiler plugin: this extension is always executed first by an extensions manager (and therefore, can decide to stop the execution of any subsequent extension), in the context of its decompiler
- secondary (additional) extensions, provided as external plugins to JEB: those extensions are shared objects among the native decompiler objects instantiated during a session. They must check the type of decompiler before performing meaningful operations (eg, an secondary extension meant to enhance an EVM decompiler should first make sure that it is called within the context of an EVM decompiler)