Module jdk.jshell
Package jdk.jshell

## Enum SourceCodeAnalysis.Completeness

- java.lang.Object
- - java.lang.Enum<SourceCodeAnalysis.Completeness>
  - - jdk.jshell.SourceCodeAnalysis.Completeness

All Implemented Interfaces:
  Serializable, Comparable<SourceCodeAnalysis.Completeness>

Enclosing class:
  SourceCodeAnalysis

    public static enum SourceCodeAnalysis.Completeness
    extends Enum<SourceCodeAnalysis.Completeness>

Describes the completeness of the given input.

### Enum Constant Summary

Enum Constants
Enum Constant and Description
`COMPLETE` The input is a complete source snippet (declaration or statement) as is.
`COMPLETE_WITH_SEMI` With this addition of a semicolon the input is a complete source snippet.
`CONSIDERED_INCOMPLETE` A statement with a trailing (non-terminated) empty statement.
`DEFINITELY_INCOMPLETE` There must be further source beyond the given input in order for it to be complete.
`EMPTY` An empty input.
`UNKNOWN` The completeness of the input could not be determined because it contains errors.

### Field Summary

Fields
`boolean` `isComplete` Is the first snippet of source complete.

### Method Summary

All Methods Static Methods Concrete Methods
`static SourceCodeAnalysis.Completeness` `valueOf(String name)` Returns the enum constant of this type with the specified name.
`static SourceCodeAnalysis.Completeness[]` `values()` Returns an array containing the constants of this enum type, in the order they are declared.

### Methods inherited from class java.lang.Enum

`clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

### Enum Constant Detail

#### COMPLETE

    public static final SourceCodeAnalysis.Completeness COMPLETE

The input is a complete source snippet (declaration or statement) as is.

#### COMPLETE_WITH_SEMI

    public static final SourceCodeAnalysis.Completeness COMPLETE_WITH_SEMI

With this addition of a semicolon the input is a complete source snippet. This will only be returned when the end of input is encountered.

#### CONSIDERED_INCOMPLETE

    public static final SourceCodeAnalysis.Completeness CONSIDERED_INCOMPLETE

A statement with a trailing (non-terminated) empty statement. Though technically it would be a complete statement with the addition of a semicolon, it is rare that that assumption is the desired behavior. The input is considered incomplete. Comments and white-space are still considered empty.

#### DEFINITELY_INCOMPLETE

    public static final SourceCodeAnalysis.Completeness DEFINITELY_INCOMPLETE

There must be further source beyond the given input in order for it to be complete. A semicolon would not complete it. This will only be returned when the end of input is encountered.

#### EMPTY

    public static final SourceCodeAnalysis.Completeness EMPTY

An empty input. The input is considered incomplete. Comments and white-space are still considered empty.

#### UNKNOWN

    public static final SourceCodeAnalysis.Completeness UNKNOWN

The completeness of the input could not be determined because it contains errors. Error detection is not a goal of completeness analysis, however errors interfered with determining its completeness. The input is considered complete because evaluating is the best mechanism to get error information.

### Field Detail

#### isComplete

    public final boolean isComplete

Is the first snippet of source complete. For example, "x=" is not complete, but "x=2" is complete, even though a subsequent line could make it "x=2+2". Already erroneous code is marked complete.

### Method Detail

#### values

    public static SourceCodeAnalysis.Completeness[] values()

Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

    for (SourceCodeAnalysis.Completeness c : SourceCodeAnalysis.Completeness.values())
        System.out.println(c);

Returns:
  an array containing the constants of this enum type, in the order they are declared

#### valueOf

    public static SourceCodeAnalysis.Completeness valueOf(String name)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `IllegalArgumentException` - if this enum type has no constant with the specified name
  `NullPointerException` - if the argument is null