## Uses of Class
jdk.jshell.Snippet

Packages that use Snippet
jdk.jshell: Provides interfaces for creating tools, such as a Read-Eval-Print Loop (REPL), which interactively evaluate "snippets" of Java programming language code.

### Uses of Snippet in jdk.jshell

Subclasses of Snippet in jdk.jshell
`class` `DeclarationSnippet` Grouping for all declaration Snippets: variable declarations (`VarSnippet`), method declarations (`MethodSnippet`), and type declarations (`TypeDeclSnippet`).
`class` `ErroneousSnippet` A snippet of code that is not valid Java programming language code.
`class` `ExpressionSnippet` Snippet for an assignment or variable-value expression.
`class` `ImportSnippet` Snippet for an import declaration.
`class` `MethodSnippet` Snippet for a method definition.
`class` `PersistentSnippet` Grouping for Snippets which persist and influence future code.
`class` `StatementSnippet` Snippet for a statement.
`class` `TypeDeclSnippet` Snippet for a type definition (a class, interface, enum, or annotation interface definition).
`class` `VarSnippet` Snippet for a variable definition.

Methods in jdk.jshell that return Snippet
`Snippet` SnippetEvent.`causeSnippet()` Either the snippet whose change caused this update or `null`.
`Snippet` SnippetEvent.`snippet()` The Snippet which has changed

Methods in jdk.jshell that return types with arguments of type Snippet
`abstract Collection<Snippet>` SourceCodeAnalysis.`dependents​(Snippet snippet)` Returns a collection of `Snippet`s which might need updating if the given `Snippet` is updated.
`Stream<Snippet>` JShell.`snippets()` Return all snippets.
`abstract List<Snippet>` SourceCodeAnalysis.`sourceToSnippets​(String input)` Converts the source code of a snippet into a `Snippet` object (or list of `Snippet` objects in the case of some var declarations, e.g.: int x, y, z;).

Methods in jdk.jshell with parameters of type Snippet
`abstract Collection<Snippet>` SourceCodeAnalysis.`dependents​(Snippet snippet)` Returns a collection of `Snippet`s which might need updating if the given `Snippet` is updated.
`Stream<Diag>` JShell.`diagnostics​(Snippet snippet)` Return the diagnostics of the most recent evaluation of the snippet.
`List<SnippetEvent>` JShell.`drop​(Snippet snippet)` Remove a declaration from the state.
`Snippet.Status` JShell.`status​(Snippet snippet)` Return the status of the snippet.
`abstract SourceCodeAnalysis.SnippetWrapper` SourceCodeAnalysis.`wrapper​(Snippet snippet)` Returns the wrapper information for the `Snippet`.

Method parameters in jdk.jshell with type arguments of type Snippet
`JShell.Builder` JShell.Builder.`idGenerator​(BiFunction<Snippet,​Integer,​String> generator)` Sets the generator of identifying names for Snippets.