# Uses of Interface
javax.tools.JavaFileObject

Packages that use JavaFileObject
Package | Description
--- | ---
com.sun.source.doctree | Provides interfaces to represent documentation comments as abstract syntax trees (AST).
com.sun.source.tree | Provides interfaces to represent source code as abstract syntax trees (AST).
com.sun.source.util | Provides utilities for operations on abstract syntax trees (AST).
javax.annotation.processing | Facilities for declaring annotation processors and for allowing annotation processors to communicate with an annotation processing tool environment.
javax.tools | Provides interfaces for tools which can be invoked from a program, for example, compilers.

## Uses of JavaFileObject in com.sun.source.doctree

Methods in com.sun.source.doctree that return types with arguments of type JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`Diagnostic<JavaFileObject>` | ErroneousTree.`getDiagnostic()` | Returns a diagnostic object giving details about the reason the body text is in error.

## Uses of JavaFileObject in com.sun.source.tree

Methods in com.sun.source.tree that return JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`JavaFileObject` | CompilationUnitTree.`getSourceFile()` | Returns the file object containing the source for this compilation unit.

## Uses of JavaFileObject in com.sun.source.util

Methods in com.sun.source.util that return JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`JavaFileObject` | TaskEvent.`getSourceFile()` | Returns the source file for this event.

Methods in com.sun.source.util that return types with arguments of type JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`abstract Iterable<? extends JavaFileObject>` | JavacTask.`generate()` | Generates code.

Method parameters in com.sun.source.util with type arguments of type JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`ErroneousTree` | DocTreeFactory.`newErroneousTree​(String text, Diagnostic<JavaFileObject> diag)` | Create a new `ErroneousTree` object, to represent some unparseable input.

Constructors in com.sun.source.util with parameters of type JavaFileObject
Constructor | Description
--- | ---
`TaskEvent​(TaskEvent.Kind kind, JavaFileObject sourceFile)` | Creates a task event for a given kind and source file.

## Uses of JavaFileObject in javax.annotation.processing

Methods in javax.annotation.processing that return JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`JavaFileObject` | Filer.`createClassFile​(CharSequence name, Element... originatingElements)` | Creates a new class file, and returns an object to allow writing to it.
`JavaFileObject` | Filer.`createSourceFile​(CharSequence name, Element... originatingElements)` | Creates a new source file and returns an object to allow writing to it.

## Uses of JavaFileObject in javax.tools

Classes in javax.tools with type parameters of type JavaFileObject
Modifier and Type | Class | Description
--- | --- | ---
`class` | `ForwardingJavaFileObject<F extends JavaFileObject>` | Forwards calls to a given file object.

Classes in javax.tools that implement JavaFileObject
Modifier and Type | Class | Description
--- | --- | ---
`class` | `ForwardingJavaFileObject<F extends JavaFileObject>` | Forwards calls to a given file object.
`class` | `SimpleJavaFileObject` | Provides simple implementations for most methods in JavaFileObject.

Methods in javax.tools that return JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`JavaFileObject` | ForwardingJavaFileManager.`getJavaFileForInput​(JavaFileManager.Location location, String className, JavaFileObject.Kind kind)` |
`JavaFileObject` | JavaFileManager.`getJavaFileForInput​(JavaFileManager.Location location, String className, JavaFileObject.Kind kind)` | Returns a file object for input representing the specified class of the specified kind in the given package-oriented location.
`JavaFileObject` | ForwardingJavaFileManager.`getJavaFileForOutput​(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling)` |
`JavaFileObject` | JavaFileManager.`getJavaFileForOutput​(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling)` | Returns a file object for output representing the specified class of the specified kind in the given package-oriented location.

Methods in javax.tools that return types with arguments of type JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjects​(File... files)` | Returns file objects representing the given files.
`Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjects​(String... names)` | Returns file objects representing the given file names.
`default Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjects​(Path... paths)` | Returns file objects representing the given paths.
`Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjectsFromFiles​(Iterable<? extends File> files)` | Returns file objects representing the given files.
`default Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjectsFromPaths​(Iterable<? extends Path> paths)` | Deprecated. use `StandardJavaFileManager.getJavaFileObjectsFromPaths(Collection)` instead, to prevent the possibility of accidentally calling the method with a single `Path` as such an argument.
`default Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjectsFromPaths​(Collection<? extends Path> paths)` | Returns file objects representing the given paths.
`Iterable<? extends JavaFileObject>` | StandardJavaFileManager.`getJavaFileObjectsFromStrings​(Iterable<String> names)` | Returns file objects representing the given file names.
`Iterable<JavaFileObject>` | ForwardingJavaFileManager.`list​(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse)` |
`Iterable<JavaFileObject>` | JavaFileManager.`list​(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse)` | Lists all file objects matching the given criteria in the given package-oriented location.

Methods in javax.tools with parameters of type JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`JavaFileManager.Location` | ForwardingJavaFileManager.`getLocationForModule​(JavaFileManager.Location location, JavaFileObject fo)` |
`default JavaFileManager.Location` | JavaFileManager.`getLocationForModule​(JavaFileManager.Location location, JavaFileObject fo)` | Gets a location for the module containing a specific file to be found within a location, which may be either a module-oriented location or an output location.
`String` | ForwardingJavaFileManager.`inferBinaryName​(JavaFileManager.Location location, JavaFileObject file)` |
`String` | JavaFileManager.`inferBinaryName​(JavaFileManager.Location location, JavaFileObject file)` | Infers a binary name of a file object based on a package-oriented location.

Method parameters in javax.tools with type arguments of type JavaFileObject
Modifier and Type | Method | Description
--- | --- | ---
`StandardJavaFileManager` | DocumentationTool.`getStandardFileManager​(DiagnosticListener<? super JavaFileObject> diagnosticListener, Locale locale, Charset charset)` | Returns a new instance of the standard file manager implementation for this tool.
`StandardJavaFileManager` | JavaCompiler.`getStandardFileManager​(DiagnosticListener<? super JavaFileObject> diagnosticListener, Locale locale, Charset charset)` | Returns a new instance of the standard file manager implementation for this tool.
`DocumentationTool.DocumentationTask` | DocumentationTool.`getTask​(Writer out, JavaFileManager fileManager, DiagnosticListener<? super JavaFileObject> diagnosticListener, Class<?> docletClass, Iterable<String> options, Iterable<? extends JavaFileObject> compilationUnits)` | Creates a future for a documentation task with the given components and arguments.
`JavaCompiler.CompilationTask` | JavaCompiler.`getTask​(Writer out, JavaFileManager fileManager, DiagnosticListener<? super JavaFileObject> diagnosticListener, Iterable<String> options, Iterable<String> classes, Iterable<? extends JavaFileObject> compilationUnits)` | Creates a future for a compilation task with the given components and arguments.