## Uses of Class
jdk.jshell.Snippet

- Packages that use Snippet
  Package | Description
  --- | ---
  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
    Modifier and Type | Class | Description
    --- | --- | ---
    `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
    Modifier and Type | Method | Description
    --- | --- | ---
    `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
    Modifier and Type | Method | Description
    --- | --- | ---
    `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
    Modifier and Type | Method | Description
    --- | --- | ---
    `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
    Modifier and Type | Method | Description
    --- | --- | ---
    `JShell.Builder` | JShell.Builder.`idGenerator​(BiFunction<Snippet,​Integer,​String> generator)` | Sets the generator of identifying names for Snippets.