- All Superinterfaces:
AttributedElement,ClassElement,ClassFileElement,CompoundElement<FieldElement>,Iterable<FieldElement>
public sealed interface FieldModel
extends CompoundElement<FieldElement>, AttributedElement, ClassElement
Models a field. A field can be viewed as a composition of
FieldElements, or by random access via accessor
methods if only specific parts of the field is needed.
Fields can be obtained from ClassModel.fields(), or in the traversal
of member elements of a class.
ClassBuilder.withField(String, ClassDesc, Consumer) is the main way
to construct fields. ClassBuilder.transformField(io.smallrye.classfile.FieldModel, io.smallrye.classfile.FieldTransform) allows creating a
new field by selectively processing the original field elements and directing
the results to a field builder.
All field attributes are accessible as member elements.
- Since:
- 24
- See Also:
-
Method Summary
Methods inherited from interface io.smallrye.classfile.AttributedElement
attributes, findAttribute, findAttributesMethods inherited from interface io.smallrye.classfile.CompoundElement
elementList, elementStream, forEach, iterator, toDebugStringMethods inherited from interface java.lang.Iterable
spliterator
-
Method Details
-
flags
AccessFlags flags()Returns the access flags.- Returns:
- the access flags
- See Also:
-
parent
Optional<ClassModel> parent()Returns the class model this field is a member of, if known.- Returns:
- the class model this field is a member of, if known
-
fieldName
Utf8Entry fieldName()Returns the name of this field.- Returns:
- the name of this field
-
fieldType
Utf8Entry fieldType()Returns the field descriptor string of this field.- Returns:
- the field descriptor string of this field
-
fieldTypeSymbol
Returns the field type, as a symbolic descriptor.- Returns:
- the field type, as a symbolic descriptor
-