W3cubDocs

/OpenJDK 25

Interface CodeElement

All Superinterfaces:
ClassFileElement
All Known Subinterfaces:
ArrayLoadInstruction, ArrayStoreInstruction, BranchInstruction, CharacterRange, ConstantInstruction, ConstantInstruction.ArgumentConstantInstruction, ConstantInstruction.IntrinsicConstantInstruction, ConstantInstruction.LoadConstantInstruction, ConvertInstruction, DiscontinuedInstruction, DiscontinuedInstruction.JsrInstruction, DiscontinuedInstruction.RetInstruction, ExceptionCatch, FieldInstruction, IncrementInstruction, Instruction, InvokeDynamicInstruction, InvokeInstruction, LabelTarget, LineNumber, LoadInstruction, LocalVariable, LocalVariableType, LookupSwitchInstruction, MonitorInstruction, NewMultiArrayInstruction, NewObjectInstruction, NewPrimitiveArrayInstruction, NewReferenceArrayInstruction, NopInstruction, OperatorInstruction, PseudoInstruction, ReturnInstruction, RuntimeInvisibleTypeAnnotationsAttribute, RuntimeVisibleTypeAnnotationsAttribute, StackInstruction, StackMapTableAttribute, StoreInstruction, TableSwitchInstruction, ThrowInstruction, TypeCheckInstruction, UnknownAttribute
All Known Implementing Classes:
CustomAttribute
public sealed interface CodeElement extends ClassFileElement permits Instruction, PseudoInstruction, CustomAttribute<T>, RuntimeVisibleTypeAnnotationsAttribute, RuntimeInvisibleTypeAnnotationsAttribute, StackMapTableAttribute, UnknownAttribute
Marker interface for a member element of a CodeModel. Such an element can appear when traversing a CodeModel unless otherwise specified, be supplied to a CodeBuilder, and be processed by a CodeTransform.

Code elements can be categorized into Instruction, PseudoInstruction, and Attribute. Unlike in other CompoundElement, the order of elements for all Instructions and some PseudoInstructions is significant.

Sealed Class Hierarchy Graph:
Sealed class hierarchy graph for CodeElementSealed class hierarchy graph for CodeElement
Since:
24
See Also:

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/classfile/CodeElement.html