| Interface | Description | 
|---|---|
| CompiledImport | 
 A traditional narrow import declaration imports a single type. 
 | 
| Element | 
 The common base type of SourceElement and JavaElement. 
 | 
| FlowAnalysisListener | 
 Listener that is called back when syms interesting for flow analysis are compiled. 
 | 
| JavaAnnotation | 
 An instance of an annotation type. 
 | 
| JavaClass | 
 A JavaClass is mostly the equivalent of java/lang/Class. 
 | 
| JavaElement | 
 CompiledObject is the compiled representation of a syntactic (aka symbolic) java element. 
 | 
| JavaField | 
 The JavaField is the compiled representation of a java field. 
 | 
| JavaFile | 
 A compilation unit. 
 | 
| JavaHasAnnotations | 
 All runtime annotations are provided, both visible and invisible. 
 | 
| JavaHasName | 
 A JavaHasName object has a name. 
 | 
| JavaHasType | 
 A JavaHasType object has a descriptor and a signature. 
 | 
| JavaIsGeneric | 
 A generic declaration declares type parameters. 
 | 
| JavaLocalVariable | 
 A compile-time local variable (or formal parameter). 
 | 
| JavaMember | 
 A JavaMember is the base interface of several Java entities, such as fields, methods, classes, initializers, and types. 
 | 
| JavaMethod | 
 The JavaMethod is the compiled representation of a java method or constructor, including the implicit <clinit> method. 
 | 
| JavaPackage | 
 A JavaPackage is the compiled representation of a Java package. 
 | 
| JavaType | 
 JavaType is the common base interface for JavaClass, JavaTypeVariable, and JavaWildcardType. 
 | 
| JavaTypeVariable | 
 The TypeVariable is a new concept in jdk 1.5. 
 | 
| JavaVariable | 
 The JavaVariable is the compiled representation of a local variable, including formal parameters. 
 | 
| JavaWildcardType | 
 The WildcardType is a new concept in jdk 1.5. 
 | 
| NodeBinding | 
 A client data object. 
 | 
| SourceAnnotation | 
 An annotation (not to be confused with annotation type). 
 | 
| SourceBlock | 
 The SourceCodeBlock represents code blocks for methods and statements. 
 | 
| SourceBlockElement | 
 A SourceElement that may be a child of a SourceBlock. 
 | 
| SourceCatchParameter | 
 Represents a catch clause parameter, which is similar to a SourceFormalParameter except the type can be the union of several disjunct types 
 | 
| SourceClass | 
 A SourceClass is the syntactic (aka symbolic) representation of a java class: classes, enums, interfaces, and annotation types. 
 | 
| SourceClassBody | 
 A class body, sometimes called a class block. 
 | 
| SourceClassInitializer | 
 The  
SourceClassInitializer represents an initializer block | 
| SourceElement | 
 Every node in the java parse tree is a subinterface of a SourceElement. 
 | 
| SourceEnumConstant | 
 An enum constant. 
 | 
| SourceError | 
 An error found in the parse tree. 
 | 
| SourceFieldDeclaration | 
 A field (or enum constant) declaration. 
 | 
| SourceFieldVariable | 
 A field variable. 
 | 
| SourceFile | 
 The SourceFile represents the root node for a complete Source source file. 
 | 
| SourceFormalParameter | 
 A formal parameter. 
 | 
| SourceFormalParameterList | 
 A formal parameter list. 
 | 
| SourceHasBlock | 
 A source element that has a block. 
 | 
| SourceHasModifiers | 
 A SourceElement that may have modifiers. 
 | 
| SourceHasName | 
 A SourceHasName has a SourceName (notice that this is a SourceToken child) child. 
 | 
| SourceHasType | 
 A SourceElement that has a type reference. 
 | 
| SourceImport | 
 An import declaration. 
 | 
| SourceInterfacesClause | 
 An extends and/or an implements clause. 
 | 
| SourceLambdaParameter | 
 Represents one lambda expression parameter. 
 | 
| SourceLexicalBlankline | 
 A whitespace token. 
 | 
| SourceLexicalComment | 
 A comment token. 
 | 
| SourceLexicalElement | 
 A lexical element is what the JLS refers to as an input element in section 3.5. 
 | 
| SourceLexicalSqlj | 
 A SQLJ declaration or executable statement. 
 | 
| SourceLocalVariable | 
 A local variable or formal parameter. 
 | 
| SourceLocalVariableDeclaration | 
 A local variable declaration. 
 | 
| SourceMember | 
 The  
SourceMember represents a member declaration for a type. | 
| SourceMemberVariable | 
 A field (or enum constant) variable. 
 | 
| SourceMethod | 
 A SourceMethod is the syntactic (aka symbolic) representation of a java method or constructor declaration. 
 | 
| SourceName | 
 A name. 
 | 
| SourcePackage | 
 The  
SourcePackage. | 
| SourceSuperclassClause | 
 An extends and/or an implements clause. 
 | 
| SourceThrowsClause | 
 A throws clause for a method or constructor declaration. 
 | 
| SourceTryResourcesList | 
 The list that holds the try resource variables encompassing the parentheses and everything inbetween them. 
 | 
| SourceTypeArgument | 
 A type argument for a type reference. 
 | 
| SourceTypeArgumentList | 
 Wraps SourceTypeArguments into a list 
 | 
| SourceTypeParameter | 
 A type parameter. 
 | 
| SourceTypeReference | 
 A type reference. 
 | 
| SourceVariable | 
 A SourceVariable is the syntactic (aka symbolic) representation of a java variable, including: field variables, enum constant variables, local variables, and formal parameters. 
 | 
| SourceVariableDeclaration | 
 The common base interface for a field declaration and a local variable declaration. 
 | 
| UnresolvedType | 
 Information about a JavaHasType, useful when JavaHasType.getResolvedType() returns null. 
 | 
| Class | Description | 
|---|---|
| SourceToken | 
 Represents one token in the SourceFile 
 | 
| Enum | Description | 
|---|---|
| SourceFile.ElementAtMask |