< prev index next >

src/java.base/share/classes/jdk/internal/classfile/impl/UnboundAttribute.java

Print this page

 32 import java.lang.classfile.AnnotationValue;
 33 import java.lang.classfile.Attribute;
 34 import java.lang.classfile.AttributeMapper;
 35 import java.lang.classfile.Attributes;
 36 import java.lang.classfile.BootstrapMethodEntry;
 37 import java.lang.classfile.constantpool.ClassEntry;
 38 import java.lang.classfile.TypeAnnotation;
 39 import java.lang.classfile.attribute.AnnotationDefaultAttribute;
 40 import java.lang.classfile.attribute.BootstrapMethodsAttribute;
 41 import java.lang.classfile.attribute.CharacterRangeInfo;
 42 import java.lang.classfile.attribute.CharacterRangeTableAttribute;
 43 import java.lang.classfile.attribute.CompilationIDAttribute;
 44 import java.lang.classfile.attribute.ConstantValueAttribute;
 45 import java.lang.classfile.attribute.DeprecatedAttribute;
 46 import java.lang.classfile.attribute.EnclosingMethodAttribute;
 47 import java.lang.classfile.attribute.ExceptionsAttribute;
 48 import java.lang.classfile.attribute.InnerClassInfo;
 49 import java.lang.classfile.attribute.InnerClassesAttribute;
 50 import java.lang.classfile.attribute.LineNumberInfo;
 51 import java.lang.classfile.attribute.LineNumberTableAttribute;

 52 import java.lang.classfile.attribute.LocalVariableInfo;
 53 import java.lang.classfile.attribute.LocalVariableTableAttribute;
 54 import java.lang.classfile.attribute.LocalVariableTypeInfo;
 55 import java.lang.classfile.attribute.LocalVariableTypeTableAttribute;
 56 import java.lang.classfile.attribute.MethodParameterInfo;
 57 import java.lang.classfile.attribute.MethodParametersAttribute;
 58 import java.lang.classfile.attribute.ModuleAttribute;
 59 import java.lang.classfile.attribute.ModuleExportInfo;
 60 import java.lang.classfile.attribute.ModuleHashInfo;
 61 import java.lang.classfile.attribute.ModuleHashesAttribute;
 62 import java.lang.classfile.attribute.ModuleMainClassAttribute;
 63 import java.lang.classfile.attribute.ModuleOpenInfo;
 64 import java.lang.classfile.attribute.ModulePackagesAttribute;
 65 import java.lang.classfile.attribute.ModuleProvideInfo;
 66 import java.lang.classfile.attribute.ModuleRequireInfo;
 67 import java.lang.classfile.attribute.ModuleResolutionAttribute;
 68 import java.lang.classfile.attribute.ModuleTargetAttribute;
 69 import java.lang.classfile.attribute.NestHostAttribute;
 70 import java.lang.classfile.attribute.NestMembersAttribute;
 71 import java.lang.classfile.attribute.PermittedSubclassesAttribute;

411             return resolutionFlags;
412         }
413     }
414 
415     public static final class UnboundPermittedSubclassesAttribute
416             extends UnboundAttribute<PermittedSubclassesAttribute>
417             implements PermittedSubclassesAttribute {
418         private final List<ClassEntry> permittedSubclasses;
419 
420         public UnboundPermittedSubclassesAttribute(List<ClassEntry> permittedSubclasses) {
421             super(Attributes.permittedSubclasses());
422             this.permittedSubclasses = List.copyOf(permittedSubclasses);
423         }
424 
425         @Override
426         public List<ClassEntry> permittedSubclasses() {
427             return permittedSubclasses;
428         }
429     }
430 
















431     public static final class UnboundNestMembersAttribute
432             extends UnboundAttribute<NestMembersAttribute>
433             implements NestMembersAttribute {
434         private final List<ClassEntry> memberEntries;
435 
436         public UnboundNestMembersAttribute(List<ClassEntry> memberEntries) {
437             super(Attributes.nestMembers());
438             this.memberEntries = List.copyOf(memberEntries);
439         }
440 
441         @Override
442         public List<ClassEntry> nestMembers() {
443             return memberEntries;
444         }
445     }
446 
447     public static final class UnboundNestHostAttribute
448             extends UnboundAttribute<NestHostAttribute>
449             implements NestHostAttribute {
450         private final ClassEntry hostEntry;

 32 import java.lang.classfile.AnnotationValue;
 33 import java.lang.classfile.Attribute;
 34 import java.lang.classfile.AttributeMapper;
 35 import java.lang.classfile.Attributes;
 36 import java.lang.classfile.BootstrapMethodEntry;
 37 import java.lang.classfile.constantpool.ClassEntry;
 38 import java.lang.classfile.TypeAnnotation;
 39 import java.lang.classfile.attribute.AnnotationDefaultAttribute;
 40 import java.lang.classfile.attribute.BootstrapMethodsAttribute;
 41 import java.lang.classfile.attribute.CharacterRangeInfo;
 42 import java.lang.classfile.attribute.CharacterRangeTableAttribute;
 43 import java.lang.classfile.attribute.CompilationIDAttribute;
 44 import java.lang.classfile.attribute.ConstantValueAttribute;
 45 import java.lang.classfile.attribute.DeprecatedAttribute;
 46 import java.lang.classfile.attribute.EnclosingMethodAttribute;
 47 import java.lang.classfile.attribute.ExceptionsAttribute;
 48 import java.lang.classfile.attribute.InnerClassInfo;
 49 import java.lang.classfile.attribute.InnerClassesAttribute;
 50 import java.lang.classfile.attribute.LineNumberInfo;
 51 import java.lang.classfile.attribute.LineNumberTableAttribute;
 52 import java.lang.classfile.attribute.LoadableDescriptorsAttribute;
 53 import java.lang.classfile.attribute.LocalVariableInfo;
 54 import java.lang.classfile.attribute.LocalVariableTableAttribute;
 55 import java.lang.classfile.attribute.LocalVariableTypeInfo;
 56 import java.lang.classfile.attribute.LocalVariableTypeTableAttribute;
 57 import java.lang.classfile.attribute.MethodParameterInfo;
 58 import java.lang.classfile.attribute.MethodParametersAttribute;
 59 import java.lang.classfile.attribute.ModuleAttribute;
 60 import java.lang.classfile.attribute.ModuleExportInfo;
 61 import java.lang.classfile.attribute.ModuleHashInfo;
 62 import java.lang.classfile.attribute.ModuleHashesAttribute;
 63 import java.lang.classfile.attribute.ModuleMainClassAttribute;
 64 import java.lang.classfile.attribute.ModuleOpenInfo;
 65 import java.lang.classfile.attribute.ModulePackagesAttribute;
 66 import java.lang.classfile.attribute.ModuleProvideInfo;
 67 import java.lang.classfile.attribute.ModuleRequireInfo;
 68 import java.lang.classfile.attribute.ModuleResolutionAttribute;
 69 import java.lang.classfile.attribute.ModuleTargetAttribute;
 70 import java.lang.classfile.attribute.NestHostAttribute;
 71 import java.lang.classfile.attribute.NestMembersAttribute;
 72 import java.lang.classfile.attribute.PermittedSubclassesAttribute;

412             return resolutionFlags;
413         }
414     }
415 
416     public static final class UnboundPermittedSubclassesAttribute
417             extends UnboundAttribute<PermittedSubclassesAttribute>
418             implements PermittedSubclassesAttribute {
419         private final List<ClassEntry> permittedSubclasses;
420 
421         public UnboundPermittedSubclassesAttribute(List<ClassEntry> permittedSubclasses) {
422             super(Attributes.permittedSubclasses());
423             this.permittedSubclasses = List.copyOf(permittedSubclasses);
424         }
425 
426         @Override
427         public List<ClassEntry> permittedSubclasses() {
428             return permittedSubclasses;
429         }
430     }
431 
432     public static final class UnboundLoadableDescriptorsAttribute
433             extends UnboundAttribute<LoadableDescriptorsAttribute>
434             implements LoadableDescriptorsAttribute {
435         private final List<Utf8Entry> loadableDescriptors;
436 
437         public UnboundLoadableDescriptorsAttribute(List<Utf8Entry> loadableDescriptors) {
438             super(Attributes.loadableDescriptors());
439             this.loadableDescriptors = List.copyOf(loadableDescriptors);
440         }
441 
442         @Override
443         public List<Utf8Entry> loadableDescriptors() {
444             return loadableDescriptors;
445         }
446     }
447 
448     public static final class UnboundNestMembersAttribute
449             extends UnboundAttribute<NestMembersAttribute>
450             implements NestMembersAttribute {
451         private final List<ClassEntry> memberEntries;
452 
453         public UnboundNestMembersAttribute(List<ClassEntry> memberEntries) {
454             super(Attributes.nestMembers());
455             this.memberEntries = List.copyOf(memberEntries);
456         }
457 
458         @Override
459         public List<ClassEntry> nestMembers() {
460             return memberEntries;
461         }
462     }
463 
464     public static final class UnboundNestHostAttribute
465             extends UnboundAttribute<NestHostAttribute>
466             implements NestHostAttribute {
467         private final ClassEntry hostEntry;
< prev index next >