interface org.hibernate.metamodel.internal.AttributeFactory$AttributeMetadata<X, Y>
  minor version: 0
  major version: 59
  flags: flags: (0x0600) ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.hibernate.metamodel.internal.AttributeFactory$AttributeMetadata
  super_class: java.lang.Object
{
  public abstract java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.lang.reflect.Member getMember();
    descriptor: ()Ljava/lang/reflect/Member;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.lang.Class<Y> getJavaType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/lang/Class<TY;>;

  public abstract javax.persistence.metamodel.Attribute$PersistentAttributeType getPersistentAttributeType();
    descriptor: ()Ljavax/persistence/metamodel/Attribute$PersistentAttributeType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract org.hibernate.metamodel.internal.AbstractManagedType<X> getOwnerType();
    descriptor: ()Lorg/hibernate/metamodel/internal/AbstractManagedType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lorg/hibernate/metamodel/internal/AbstractManagedType<TX;>;

  public abstract org.hibernate.mapping.Property getPropertyMapping();
    descriptor: ()Lorg/hibernate/mapping/Property;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean isPlural();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
}
Signature: <X:Ljava/lang/Object;Y:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "AttributeFactory.java"
NestHost: org.hibernate.metamodel.internal.AttributeFactory
InnerClasses:
  public final PersistentAttributeType = javax.persistence.metamodel.Attribute$PersistentAttributeType of javax.persistence.metamodel.Attribute
  private abstract AttributeMetadata = org.hibernate.metamodel.internal.AttributeFactory$AttributeMetadata of org.hibernate.metamodel.internal.AttributeFactory