APIdia Launch Partner
Top Description Methods
java.lang.classfile.attribute

public sealed Interface LocalVariableTypeTableAttribute

extends Attribute<LocalVariableTypeTableAttribute>
permits BoundLocalVariableTypeTableAttribute, UnboundLocalVariableTypeTableAttribute
Known Direct Implementers
jdk.internal.classfile.impl.BoundAttribute.BoundLocalVariableTypeTableAttribute, jdk.internal.classfile.impl.UnboundAttribute.UnboundLocalVariableTypeTableAttribute
Imports
java.lang.classfile.Attribute, .AttributeMapper, .AttributeMapper.AttributeStability, .Attributes, .ClassFile, .CodeBuilder, .CodeModel, java.lang.classfile.instruction.LocalVariableType, java.util.List, jdk.internal.classfile.impl.BoundAttribute, .UnboundAttribute

Models the LocalVariableTypeTable attribute (JVMS 4.7.14), which records debug information about local variables with generic types. Its entries are delivered as LocalVariableTypes when traversing the elements of a CodeModel, which can be 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 LocalVariableType, resulting in at most one attribute instance in the built Code attribute.

The attribute was introduced in the Java SE Platform version 5.0, major version 49.

API Note

Only local variables that have generic field types need to be described by this attribute. If a local variable is described in a LocalVariableTypeTable attribute, it must also be described in a LocalVariableTable attribute.

Since
24
Java Virtual Machine Specification
4.7.14 The LocalVariableTypeTable Attribute
See Also
Attributes#localVariableTypeTable()

Method Summary

Modifier and TypeMethod and Description
public List<LocalVariableTypeInfo>

Returns:

debug information for the local variables with generic types in this method
localVariableTypes
()

Returns debug information for the local variables with generic types in this method.

public static LocalVariableTypeTableAttribute

Returns:

a LocalVariableTypeTable attribute
of
(List<LocalVariableTypeInfo>
the local variable descriptions
locals
)

Returns a LocalVariableTypeTable attribute.

Inherited from java.lang.classfile.Attribute:
attributeMapperattributeName

Method Detail

localVariableTypesback to summary
public List<LocalVariableTypeInfo> localVariableTypes()

Returns debug information for the local variables with generic types in this method.

Returns:List<LocalVariableTypeInfo>

debug information for the local variables with generic types in this method

ofback to summary
public static LocalVariableTypeTableAttribute of(List<LocalVariableTypeInfo> locals)

Returns a LocalVariableTypeTable attribute.

Parameters
locals:List<LocalVariableTypeInfo>

the local variable descriptions

Returns:LocalVariableTypeTableAttribute

a LocalVariableTypeTable attribute

Exceptions
IllegalArgumentException:
if the number of descriptions exceeds the limit of u2