public class

CDocument

extends CodeDocument
java.lang.Object
   ↳ com.pnfsoftware.jeb.util.events.EventSource
     ↳ com.pnfsoftware.jeb.core.output.text.impl.AbstractTextDocument
       ↳ com.pnfsoftware.jeb.core.output.code.CodeDocument
         ↳ com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.CDocument

Class Overview

C AST document used to render a decompiled piece of native code. These documents are provided by the INativeDecompilerUnit or generated by INativeSourceUnit.

Summary

Constants
String propnameHideCasts
String propnameHideTopLevelNamespaceElements
String propnameMergeAdjacentDefinitions
String propnameSpaceOutCompounds
[Expand]
Inherited Fields
From class com.pnfsoftware.jeb.util.events.EventSource
Public Constructors
CDocument(INativeSourceUnit srcUnit)
Public Methods
ICoordinates addressToCoordinates(String address, CoordinatesConversionPrecision precision)
Precision is not used - Use an exact address
static void buildPDM(IPropertyDefinitionManager unitPDM)
String coordinatesToAddress(ICoordinates coordinates, AddressConversionPrecision precision)
Convert document-specific text coordinates to a unit-specific address.
void dispose()
The default implementation does nothing.
long getAnchorCount()
COutputSink getDocumentPart(long anchorId, int linesAfter, int linesBefore)
IUnit getUnit()
[Expand]
Inherited Methods
From class com.pnfsoftware.jeb.core.output.text.impl.AbstractTextDocument
From class com.pnfsoftware.jeb.util.events.EventSource
From class java.lang.Object
From interface com.pnfsoftware.jeb.core.output.IGenericDocument
From interface com.pnfsoftware.jeb.core.output.text.ITextDocument
From interface com.pnfsoftware.jeb.util.events.IEventSource

Constants

public static final String propnameHideCasts

Constant Value: "HideCasts"

public static final String propnameHideTopLevelNamespaceElements

Constant Value: "HideTopLevelNamespaceElements"

public static final String propnameMergeAdjacentDefinitions

Constant Value: "MergeAdjacentDefinitions"

public static final String propnameSpaceOutCompounds

Constant Value: "SpaceOutCompounds"

Public Constructors

public CDocument (INativeSourceUnit srcUnit)

Public Methods

public ICoordinates addressToCoordinates (String address, CoordinatesConversionPrecision precision)

Precision is not used - Use an exact address

Parameters
address a textual address
Returns
  • the text coordinates, null on error

public static void buildPDM (IPropertyDefinitionManager unitPDM)

public String coordinatesToAddress (ICoordinates coordinates, AddressConversionPrecision precision)

Convert document-specific text coordinates to a unit-specific address.

Note: The addressing scheme is unit specific, and defined by the plugin developer. Addresses should not start with the reserved '@' prefix.

Parameters
coordinates the coordinates
precision indicate the precision of the address ( COARSE will return a raw address, with a faster result while FINE will return a more precise address that can be a bit longer). If COARSE can not be retrieved, it may return a null result, and the user will need to recall this method with another precision.
Returns
  • the address, null on error

public void dispose ()

The default implementation does nothing.

public long getAnchorCount ()

public COutputSink getDocumentPart (long anchorId, int linesAfter, int linesBefore)

public IUnit getUnit ()