# Interface: com.pnfsoftware.jeb.core.units.code.ISourceUnit

This interface is used to represent source code abstract syntax trees \(AST\). Such units are produced by [IDecompilerUnit](IDecompilerUnit)s.

## Method: getDecompiler
- return type: `com.pnfsoftware.jeb.core.units.code.IDecompilerUnit`

Description: Get the decompiler unit \(possibly the parent, possibly null\) that generated this unit.
return: a decompiler unit, possibly null

## Method: getFileExtension
- return type: `java.lang.String`

Description: Get the ideal or most commonly accepted file extension for the code represented by this source unit.
return: an extension string \(not prefixed by dot\), or null if unknown

## Method: getFullyQualifiedName
- return type: `java.lang.String`

Description: Get the fully\-qualified, original name of this source entity. Since [ISourceUnit](ISourceUnit) are normally produced by decompilers, this method will likely return a class or method name.
return: the name

## Method: getSource
- return type: `java.lang.String`

Description: Generate the decompiled source text. Convenience method.
return: source text

## Method: getSourceDocument
- return type: `com.pnfsoftware.jeb.core.output.text.ITextDocument`

Description: Get the text document representing the decompiled source. 

 The caller is responsible for disposing the returned document after usage.
return: source document

