# Class: com.pnfsoftware.jeb.core.units.code.java.JavaDocument

Java AST document used to render a decompiled piece of Java code. These documents are provided by the [IDexDecompilerUnit](IDexDecompilerUnit) or generated by [IJavaSourceUnit](IJavaSourceUnit).

## Constructor: JavaDocument
- parameter: `ast`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaSourceUnit`


## Static Field: propnameDisplayASTElementStackOnHover
Type: `java.lang.String`

Constant value: `DisplayASTElementStackOnHover`

## Static Field: propnameDisplayMethodInternalsAsComment
Type: `java.lang.String`

Constant value: `DisplayMethodInternalsAsComment`

## Static Field: propnameDisplayPrivateMethodsLast
Type: `java.lang.String`

Constant value: `DisplayPrivateMethodsLast`

## Static Field: propnameDisregardCollapse
Type: `java.lang.String`

Constant value: `DisregardCollapse`

## Static Field: propnameDoNotGenerateThisIfPossible
Type: `java.lang.String`

Constant value: `DoNotGenerateThisIfPossible`

## Static Field: propnameGenerateAnnotations
Type: `java.lang.String`

Constant value: `GenerateAnnotations`

## Static Field: propnameGenerateLambdas
Type: `java.lang.String`

Constant value: `GenerateLambdas`

## Static Field: propnameGenerateOverrideAnnotations
Type: `java.lang.String`

Constant value: `GenerateOverrideAnnotations`

## Static Field: propnameGenerateSyntheticFields
Type: `java.lang.String`

Constant value: `GenerateSyntheticFields`

## Static Field: propnameGenerateSyntheticMethods
Type: `java.lang.String`

Constant value: `GenerateSyntheticMethods`

## Static Field: propnameInsertBlankLinesAfterCompounds
Type: `java.lang.String`

Constant value: `InsertBlankLinesAfterCompounds`

## Static Field: propnameResolveFieldAccessTargets
Type: `java.lang.String`

Constant value: `ResolveFieldAccessTargets`

## Static Field: propnameResolveMethodCallTargets
Type: `java.lang.String`

Constant value: `ResolveMethodCallTargets`

## Static Field: propnameSortItemsForRendering
Type: `java.lang.String`

Constant value: `SortItemsForRendering`

## Static Field: propnameSplitCallArgThreshold
Type: `java.lang.String`

Constant value: `SplitCallArgThreshold`

## Static Field: propnameUseDebugInfoNames
Type: `java.lang.String`

Constant value: `UseDebugInfoNames`

## Static Field: propnameUseVarReservedType
Type: `java.lang.String`

Constant value: `UseVarReservedType`

## Method: addressToCoordinates
- parameter: `address`, type: `java.lang.String`
- parameter: `precision`, type: `com.pnfsoftware.jeb.core.output.CoordinatesConversionPrecision`
- return type: `com.pnfsoftware.jeb.core.output.text.ICoordinates`


## Method: coordinatesToAddress
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.text.ICoordinates`
- parameter: `precision`, type: `com.pnfsoftware.jeb.core.output.AddressConversionPrecision`
- return type: `java.lang.String`


## Method: coordinatesToCodeCoordinates
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.text.ICoordinates`
- return type: `com.pnfsoftware.jeb.core.output.code.coordinates.ICodeCoordinates`


## Method: dispose


## Method: getAnchorCount
- return type: `long`


## Method: getDocumentPart
- parameter: `anchorId`, type: `long`
- parameter: `linesAfter`, type: `int`
- parameter: `linesBefore`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.java.JavaOutputSink`


## Method: getOwnerUnit
- return type: `com.pnfsoftware.jeb.core.units.code.java.IJavaSourceUnit`


## Method: getUnit
- return type: `com.pnfsoftware.jeb.core.units.IUnit`


## Static Method: buildPDM
- parameter: `unitPDM`, type: `com.pnfsoftware.jeb.core.properties.IPropertyDefinitionManager`


