W3cubDocs

/OpenJDK 25

Interface LocalVariableTableAttribute

All Superinterfaces:
Attribute<LocalVariableTableAttribute>, ClassFileElement
public sealed interface LocalVariableTableAttribute extends Attribute<LocalVariableTableAttribute>
Models the LocalVariableTable attribute (JVMS 4.7.13), which records debug information about local variables. Its entries are delivered as LocalVariables when traversing the elements of a CodeModel, which is toggled by ClassFile.DebugElementsOption.

This attribute only appears on Code attributes, and permits multiple instances in a Code attribute. It has a data dependency on labels.

This attribute cannot be sent to a CodeBuilder; its entries can be constructed with LocalVariable, resulting in at most one attribute instance in the built Code attribute.

The attribute was introduced in the Java Platform version 1.0.2, major version 45.

API Note:
Generic local variable types and potentially annotated use of those types are defined by LocalVariableTypeTableAttribute and RuntimeVisibleTypeAnnotationsAttribute respectively, which requires this attribute to be present.
See Java Virtual Machine Specification:
4.7.13 The LocalVaribleTable Attribute
Since:
24
See Also:

Method Summary

Modifier and Type Method Description
List<LocalVariableInfo> localVariables()
Returns debug information for the local variables in this method.
static LocalVariableTableAttribute of(List<LocalVariableInfo> locals)
Returns a LocalVariableTable attribute.

Methods declared in interface Attribute

attributeMapper, attributeName

Method Details

localVariables

List<LocalVariableInfo> localVariables()
Returns debug information for the local variables in this method.
Returns:
debug information for the local variables in this method

of

static LocalVariableTableAttribute of(List<LocalVariableInfo> locals)
Returns a LocalVariableTable attribute.
API Note:
The created attribute cannot be written to a CodeBuilder. Use CodeBuilder::localVariable instead.
Parameters:
locals - the local variable descriptions
Returns:
a LocalVariableTable attribute

© 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/attribute/LocalVariableTableAttribute.html