## Uses of Interface
com.sun.mirror.declaration.Declaration

Packages that use Declaration
Package | Description
--- | ---
com.sun.mirror.apt | Classes used to communicate information between annotation processors and an annotation processing tool.
com.sun.mirror.declaration | Interfaces used to model program element declarations.
com.sun.mirror.util | Utilities to assist in the processing of declarations and types.

### Uses of Declaration in com.sun.mirror.apt

Methods in com.sun.mirror.apt that return types with arguments of type Declaration
Modifier and Type | Method and Description
--- | ---
`Collection<Declaration>` | AnnotationProcessorEnvironment.`getDeclarationsAnnotatedWith(AnnotationTypeDeclaration a)` Returns the declarations annotated with the given annotation type.

### Uses of Declaration in com.sun.mirror.declaration

Subinterfaces of Declaration in com.sun.mirror.declaration
Modifier and Type | Interface and Description
--- | ---
`interface` | `AnnotationTypeDeclaration` Represents the declaration of an annotation type.
`interface` | `AnnotationTypeElementDeclaration` Represents an element of an annotation type.
`interface` | `ClassDeclaration` Represents the declaration of a class.
`interface` | `ConstructorDeclaration` Represents a constructor of a class or interface.
`interface` | `EnumConstantDeclaration` Represents an enum constant declaration.
`interface` | `EnumDeclaration` Represents the declaration of an enum type.
`interface` | `ExecutableDeclaration` Represents a method or constructor of a class or interface.
`interface` | `FieldDeclaration` Represents a field of a type declaration.
`interface` | `InterfaceDeclaration` Represents the declaration of an interface.
`interface` | `MemberDeclaration` Represents a declaration that may be a member or constructor of a declared type.
`interface` | `MethodDeclaration` Represents a method of a class or interface.
`interface` | `PackageDeclaration` Represents the declaration of a package.
`interface` | `ParameterDeclaration` Represents a formal parameter of a method or constructor.
`interface` | `TypeDeclaration` Represents the declaration of a class or interface.
`interface` | `TypeParameterDeclaration` Represents a formal type parameter of a generic type, method, or constructor declaration.

Methods in com.sun.mirror.declaration that return Declaration
Modifier and Type | Method and Description
--- | ---
`Declaration` | TypeParameterDeclaration.`getOwner()` Returns the type, method, or constructor declaration within which this type parameter is declared.

### Uses of Declaration in com.sun.mirror.util

Methods in com.sun.mirror.util with type parameters of type Declaration
Modifier and Type | Method and Description
--- | ---
`<D extends Declaration> Collection<D>` | DeclarationFilter.`filter(Collection<? extends Declaration> decls, Class<D> resType)` Returns the declarations matched by this filter, with the result being restricted to declarations of a given kind.
`<D extends Declaration> Collection<D>` | DeclarationFilter.`filter(Collection<D> decls)` Returns the declarations matched by this filter.

Methods in com.sun.mirror.util with parameters of type Declaration
Modifier and Type | Method and Description
--- | ---
`boolean` | DeclarationFilter.`matches(Declaration decl)` Tests whether this filter matches a given declaration.
`void` | DeclarationVisitor.`visitDeclaration(Declaration d)` Visits a declaration.
`void` | SimpleDeclarationVisitor.`visitDeclaration(Declaration d)` Visits a declaration.

Method parameters in com.sun.mirror.util with type arguments of type Declaration
Modifier and Type | Method and Description
--- | ---
`<D extends Declaration> Collection<D>` | DeclarationFilter.`filter(Collection<? extends Declaration> decls, Class<D> resType)` Returns the declarations matched by this filter, with the result being restricted to declarations of a given kind.
`static DeclarationFilter` | DeclarationFilter.`getFilter(Class<? extends Declaration> kind)` Returns a filter that selects declarations of a particular kind.

Copyright © 2004, 2014, Oracle and/or its affiliates. All rights reserved.