Spec-Zone.ru › OpenJDK 21

Класс перечисления Snippet.Kind

java.lang.Object
java.lang.Enum<Snippet.Kind>
jdk.jshell.Snippet.Kind
Все реализованные интерфейсы:
Serializable, Comparable<Snippet.Kind>, Constable
Вложенный класс:
Snippet
public static enum Snippet.Kind extends Enum<Snippet.Kind>
Описывает общий тип фрагмента. Kind является неизменяемым свойством фрагмента. К нему обращаются с помощью Snippet.kind(). Kind может быть использован для определения подкласса фрагмента. Например, eval("int three() { return 3; }") вернет событие создания фрагмента. Kind этого фрагмента будет METHOD, из чего вы знаете, что подкласс Snippet является MethodSnippet и может быть отлит как таковой.

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в классе java.lang.Enum

Enum.EnumDesc<E extends Enum<E>>

Краткое описание констант перечисления

Константа перечисления Описание
ERRONEOUS
Синтаксически некорректный ввод, для которого не удалось определить конкретный тип.
EXPRESSION
Выражение, с побочными эффектами или без них.
IMPORT
Декларация импорта: import ...
METHOD
Декларация метода.
STATEMENT
Оператор.
TYPE_DECL
Декларация типа.
VAR
Определение одной переменной.

Краткое описание методов

Модификатор и тип Метод Описание
boolean isPersistent()
Указывает, является ли этот Kind фрагмента постоянным.
static Snippet.Kind valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем.
static Snippet.Kind[] values()
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления.

Методы, объявленные в классе java.lang.Enum

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

Методы, объявленные в классе java.lang.Object

getClass, notify, notifyAll, wait, wait, wait

Подробное описание констант перечисления

IMPORT

public static final Snippet.Kind IMPORT
Декларация импорта: import ... Фрагмент является экземпляром ImportSnippet.

Импорт может быть импортом одного типа (Snippet.SubKind.SINGLE_TYPE_IMPORT_SUBKIND), статическим импортом одного типа (Snippet.SubKind.SINGLE_STATIC_IMPORT_SUBKIND), импортом всех типов по требованию (Snippet.SubKind.TYPE_IMPORT_ON_DEMAND_SUBKIND) или статическим импортом всех типов по требованию (Snippet.SubKind.SINGLE_STATIC_IMPORT_SUBKIND) – используйте Snippet.subKind() для различения.

Декларация импорта является постоянной.

См. Спецификацию языка Java:
7.5 Декларации импорта

TYPE_DECL

public static final Snippet.Kind TYPE_DECL
Декларация типа. Включая: NormalClassDeclaration, EnumDeclaration, NormalInterfaceDeclaration, и AnnotationTypeDeclaration. Фрагмент является экземпляром TypeDeclSnippet.

Декларация типа может быть интерфейсом Snippet.SubKind.INTERFACE_SUBKIND, классом Snippet.SubKind.CLASS_SUBKIND, перечислением и аннотированными интерфейсами – см. Snippet.SubKind для различения.

Декларация типа является постоянной.

См. Спецификацию языка Java:
7.6 Декларации верхнего уровня типа

METHOD

public static final Snippet.Kind METHOD
Декларация метода. Фрагмент является экземпляром MethodSnippet.

Декларация метода является постоянной.

См. Спецификацию языка Java:
8.4 Декларации методов

VAR

public static final Snippet.Kind VAR
Определение одной переменной. Соответствует одному VariableDeclarator. Фрагмент является экземпляром VarSnippet.

Переменная может быть с инициализатором или без него, или быть временной переменной, представляющей выражение – см. Snippet.SubKind для различения.

Декларация переменной является постоянной.

См. Спецификацию языка Java:
8.3 Декларации полей

EXPRESSION

public static final Snippet.Kind EXPRESSION
Выражение, с побочными эффектами или без них. Фрагмент является экземпляром ExpressionSnippet.

Выражение в настоящее время представляет собой либо простое именованное обращение к переменной (Snippet.SubKind.VAR_VALUE_SUBKIND), либо присваивание (оба из которых имеют естественные имена ссылок) – см. Snippet.SubKind для различения. Все другие формы выражений (операторы, вызовы методов и т.д.) генерируют временную переменную и поэтому являются вместо типа VAR.

См. Спецификацию языка Java:
15 Выражения

STATEMENT

public static final Snippet.Kind STATEMENT
Оператор. Фрагмент является экземпляром StatementSnippet.
См. Спецификацию языка Java:
14.5 Операторы

ERRONEOUS

public static final Snippet.Kind ERRONEOUS
Синтаксически некорректный ввод, для которого не удалось определить конкретный тип. Фрагмент является экземпляром ErroneousSnippet.

Подробное описание методов

values

public static Snippet.Kind[] values()
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления.
Возвращает:
массив, содержащий константы этого класса перечисления в порядке их объявления

valueOf

public static Snippet.Kind valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем. Строка должна точно соответствовать идентификатору, используемому для объявления константы перечисления в этом классе. (Дополнительные пробелы не допускаются.)
Параметры:
name - имя возвращаемой константы перечисления.
Возвращает:
константу перечисления с указанным именем
Исключения:
IllegalArgumentException - если в этом классе перечисления нет константы с указанным именем
NullPointerException - если аргумент равен null

isPersistent

public boolean isPersistent()
Указывает, является ли этот Kind фрагмента постоянным. Только декларации являются постоянными, поскольку они влияют на будущие фрагменты.

Обратите внимание, что хотя Kind фрагмента может быть постоянным, это не означает, что фрагмент сохранится; например, он может быть недействительным или был отброшен. См.: Snippet.Status.isDefined().

Возвращает:
true если этот Kind Snippet видим для последующих вычислений; в противном случае false

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.jshell/jdk/jshell/Snippet.Kind.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API