Spec-Zone.ru › OpenJDK 24

Интерфейс MethodTransform

Все суперинтерфейсы:
ClassFileTransform<MethodTransform, MethodElement, MethodBuilder>
Функциональный интерфейс:
Это функциональный интерфейс и поэтому может быть использован в качестве целевого назначения лямбда-выражения или ссылки на метод.
@FunctionalInterface public non-sealed interface MethodTransform extends ClassFileTransform<MethodTransform, MethodElement, MethodBuilder>
Преобразование потоков MethodElement.

Обратитесь к ClassFileTransform за общими рекомендациями и предосторожностями при использовании преобразований для структур в формате файла class.

Преобразование метода может быть поднято до преобразования класса через ClassTransform.transformingMethods(MethodTransform), преобразуя только MethodModel среди членов класса и передавая все остальные элементы в билдеры.

С:
24
См. также:
  • MethodModel
  • ClassBuilder.transformMethod(java.lang.classfile.MethodModel, java.lang.classfile.MethodTransform)

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

Модификатор и тип Поле Описание
static final MethodTransform ACCEPT_ALL
Преобразование метода, которое передает все элементы билдеру.

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

Модификатор и тип Метод Описание
default MethodTransform andThen(MethodTransform t)
Цепочечное преобразование с другим преобразованием; элементы, представленные билдеру этого преобразования, станут входными данными для следующего преобразования.
static MethodTransform dropping(Predicate<MethodElement> filter)
Создает преобразование метода, которое пропускает каждый элемент в билдер, за исключением тех, для которых заданный Predicate является истинным.
static MethodTransform endHandler(Consumer<MethodBuilder> finisher)
Создает преобразование метода, которое пропускает каждый элемент в билдер и вызывает указанную функцию по завершении преобразования.
static MethodTransform ofStateful(Supplier<MethodTransform> supplier)
Создает состояние преобразование метода из Supplier.
static MethodTransform transformingCode(CodeTransform xform)
Создает преобразование метода, которое преобразует CodeModel элементы с помощью предоставленного преобразования кода, передавая каждый другой элемент в билдер.

Методы, объявленные в интерфейсе java.lang.classfile.ClassFileTransform

accept, atEnd, atStart

Подробное описание полей

ACCEPT_ALL

static final MethodTransform ACCEPT_ALL
Преобразование метода, которое передает все элементы билдеру.

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

ofStateful

static MethodTransform ofStateful(Supplier<MethodTransform> supplier)
Создает состояние преобразование метода из Supplier. Поставщик будет вызываться для каждого преобразования.
Параметры:
supplier - Supplier, который генерирует новый объект преобразования для каждой итерации
Возвращает:
преобразование метода со статусом

endHandler

static MethodTransform endHandler(Consumer<MethodBuilder> finisher)
Создает преобразование метода, которое пропускает каждый элемент в билдер и вызывает указанную функцию по завершении преобразования.
Параметры:
finisher - функция, вызываемая по завершении преобразования
Возвращает:
преобразование метода

dropping

static MethodTransform dropping(Predicate<MethodElement> filter)
Создает преобразование метода, которое пропускает каждый элемент в билдер, за исключением тех, для которых заданный Predicate является истинным.
Параметры:
filter - предикат, определяющий, какие элементы пропускать
Возвращает:
преобразование метода

transformingCode

static MethodTransform transformingCode(CodeTransform xform)
Создает преобразование метода, которое преобразует CodeModel элементы с помощью предоставленного преобразования кода, передавая каждый другой элемент в билдер.
Параметры:
xform - преобразование метода
Возвращает:
преобразование класса

andThen

default MethodTransform andThen(MethodTransform t)
Описание скопировано из интерфейса: ClassFileTransform
Цепочечное преобразование с другим преобразованием; элементы, представленные билдеру этого преобразования, станут входными данными для следующего преобразования.

Этот метод реализован API файла класса. Пользователи обычно не имеют достаточного доступа к функциональности API файла класса, чтобы правильно переопределить этот метод для общих преобразований вниз по потоку.

Указано в:
andThen в интерфейсе ClassFileTransform<MethodTransform, MethodElement, MethodBuilder>
Требования к реализации:
Стандартная реализация возвращает это преобразование метода, цепочечное с другим преобразованием метода из аргумента. Цепочечное соединение двух преобразований требует привлечения цепочечного билдера, служащего целевым билдером для этого преобразования, а также источником элементов для преобразования по нисходящей ветви.
Параметры:
t - преобразование по нисходящей ветви
Возвращает:
цепочечное преобразование

© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/classfile/MethodTransform.html

Spec-Zone.ru

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