public interface java.lang.invoke.TypeDescriptor$OfField<F extends java.lang.invoke.TypeDescriptor$OfField<F>> extends java.lang.invoke.TypeDescriptor
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: java.lang.invoke.TypeDescriptor$OfField
  super_class: java.lang.Object
{
  public abstract boolean isArray();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean isPrimitive();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract F componentType();
    descriptor: ()Ljava/lang/invoke/TypeDescriptor$OfField;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TF;

  public abstract F arrayType();
    descriptor: ()Ljava/lang/invoke/TypeDescriptor$OfField;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TF;
}
Signature: <F::Ljava/lang/invoke/TypeDescriptor$OfField<TF;>;>Ljava/lang/Object;Ljava/lang/invoke/TypeDescriptor;
SourceFile: "TypeDescriptor.java"
NestHost: java.lang.invoke.TypeDescriptor
InnerClasses:
  public abstract OfField = java.lang.invoke.TypeDescriptor$OfField of java.lang.invoke.TypeDescriptor