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
- All Known Implementing Classes:
CustomAttribute
public sealed interface CodeElement
extends ClassFileElement
permits Instruction, PseudoInstruction, CustomAttribute<T>, RuntimeVisibleTypeAnnotationsAttribute, RuntimeInvisibleTypeAnnotationsAttribute, StackMapTableAttribute
A marker interface for elements that can appear when traversing
a
CodeModel
or be presented to a CodeBuilder
. Code elements
are either an Instruction
, which models an instruction in the body
of a method, or a PseudoInstruction
, which models metadata from
the code attribute, such as line number metadata, local variable metadata,
exception metadata, label target metadata, etc.