Spec-Zone.ru › OpenJDK 27

Interface FieldTransform

All Superinterfaces:
ClassFileTransform<FieldTransform, FieldElement, FieldBuilder>
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public non-sealed interface FieldTransform extends ClassFileTransform<FieldTransform, FieldElement, FieldBuilder>
A transformation on streams of FieldElement.

Refer to ClassFileTransform for general guidance and caution around the use of transforms for structures in the class file format.

A field transform can be lifted to a class transform via ClassTransform.transformingFields(FieldTransform), transforming only the FieldModel among the class members and passing all other elements to the builders.

Since:
24
See Also:
  • FieldModel
  • ClassBuilder.transformField(FieldModel, FieldTransform)

Field Summary

Modifier and Type Field Description
static final FieldTransform ACCEPT_ALL
A field transform that passes all elements to the builder.

Method Summary

Modifier and Type Method Description
default FieldTransform andThen(FieldTransform t)
Chain this transform with another; elements presented to the builder of this transform will become the input to the next transform.
static FieldTransform dropping(Predicate<FieldElement> filter)
Creates a field transform that passes each element through to the builder, except for those that the supplied Predicate is true for.
static FieldTransform endHandler(Consumer<FieldBuilder> finisher)
Creates a field transform that passes each element through to the builder, and calls the specified function when transformation is complete.
static FieldTransform ofStateful(Supplier<FieldTransform> supplier)
Creates a stateful field transform from a Supplier.

Methods declared in interface ClassFileTransform

accept, atEnd, atStart
Modifier and Type Method Description
void accept(FieldBuilder builder, FieldElement element)
Transform an element by taking the appropriate actions on the builder.
default void atEnd(FieldBuilder builder)
Take any final action during transformation of a classfile entity.
default void atStart(FieldBuilder builder)
Take any preliminary action during transformation of a classfile entity.

Field Details

ACCEPT_ALL

static final FieldTransform ACCEPT_ALL
A field transform that passes all elements to the builder.

Method Details

ofStateful

static FieldTransform ofStateful(Supplier<FieldTransform> supplier)
Creates a stateful field transform from a Supplier. The supplier will be invoked for each transformation.
Parameters:
supplier - a Supplier that produces a fresh transform object for each traversal
Returns:
the stateful field transform

endHandler

static FieldTransform endHandler(Consumer<FieldBuilder> finisher)
Creates a field transform that passes each element through to the builder, and calls the specified function when transformation is complete.
Parameters:
finisher - the function to call when transformation is complete
Returns:
the field transform

dropping

static FieldTransform dropping(Predicate<FieldElement> filter)
Creates a field transform that passes each element through to the builder, except for those that the supplied Predicate is true for.
Parameters:
filter - the predicate that determines which elements to drop
Returns:
the field transform

andThen

default FieldTransform andThen(FieldTransform t)
Description copied from interface: ClassFileTransform
Chain this transform with another; elements presented to the builder of this transform will become the input to the next transform.

This method is implemented by the Class-File API. Users usually don't have sufficient access to Class-File API functionalities to override this method correctly for generic downstream transforms.

Specified by:
andThen in interface ClassFileTransform<FieldTransform, FieldElement, FieldBuilder>
Implementation Requirements:
The default implementation returns this field transform chained with another field transform from the argument. Chaining of two transforms requires to involve a chained builder serving as a target builder for this transform and also as a source of elements for the downstream transform.
Parameters:
t - the downstream transform
Returns:
the chained transform

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 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.

Spec-Zone.ru

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