public class javax.lang.model.util.ElementScanner14<R, P> extends javax.lang.model.util.ElementScanner9<R, P>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.lang.model.util.ElementScanner14
  super_class: javax.lang.model.util.ElementScanner9
{
  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.util.ElementScanner14 this
         0: .line 112
            aload 0 /* this */
            aconst_null
            invokespecial javax.lang.model.util.ElementScanner9.<init>:(Ljava/lang/Object;)V
         1: .line 113
            return
        end local 0 // javax.lang.model.util.ElementScanner14 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/lang/model/util/ElementScanner14<TR;TP;>;

  protected void <init>();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.lang.model.util.ElementScanner14 this
        start local 1 // java.lang.Object defaultValue
         0: .line 122
            aload 0 /* this */
            aload 1 /* defaultValue */
            invokespecial javax.lang.model.util.ElementScanner9.<init>:(Ljava/lang/Object;)V
         1: .line 123
            return
        end local 1 // java.lang.Object defaultValue
        end local 0 // javax.lang.model.util.ElementScanner14 this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Ljavax/lang/model/util/ElementScanner14<TR;TP;>;
            0    2     1  defaultValue  TR;
    Signature: (TR;)V
    MethodParameters:
              Name  Flags
      defaultValue  

  public R visitType(javax.lang.model.element.TypeElement, );
    descriptor: (Ljavax/lang/model/element/TypeElement;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner14 this
        start local 1 // javax.lang.model.element.TypeElement e
        start local 2 // java.lang.Object p
         0: .line 138
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* e */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
            invokevirtual javax.lang.model.util.ElementScanner14.createScanningList:(Ljavax/lang/model/element/Parameterizable;Ljava/util/List;)Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner14.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // javax.lang.model.element.TypeElement e
        end local 0 // javax.lang.model.util.ElementScanner14 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner14<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/TypeElement;
            0    1     2     p  TP;
    Signature: (Ljavax/lang/model/element/TypeElement;TP;)TR;
    MethodParameters:
      Name  Flags
      e     
      p     

  public R visitExecutable(javax.lang.model.element.ExecutableElement, );
    descriptor: (Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner14 this
        start local 1 // javax.lang.model.element.ExecutableElement e
        start local 2 // java.lang.Object p
         0: .line 152
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* e */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            invokevirtual javax.lang.model.util.ElementScanner14.createScanningList:(Ljavax/lang/model/element/Parameterizable;Ljava/util/List;)Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner14.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // javax.lang.model.element.ExecutableElement e
        end local 0 // javax.lang.model.util.ElementScanner14 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner14<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/ExecutableElement;
            0    1     2     p  TP;
    Signature: (Ljavax/lang/model/element/ExecutableElement;TP;)TR;
    MethodParameters:
      Name  Flags
      e     
      p     

  private java.util.List<? extends javax.lang.model.element.Element> createScanningList(javax.lang.model.element.Parameterizable, java.util.List<? extends javax.lang.model.element.Element>);
    descriptor: (Ljavax/lang/model/element/Parameterizable;Ljava/util/List;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner14 this
        start local 1 // javax.lang.model.element.Parameterizable element
        start local 2 // java.util.List toBeScanned
         0: .line 157
            aload 1 /* element */
            invokeinterface javax.lang.model.element.Parameterizable.getTypeParameters:()Ljava/util/List;
            astore 3 /* typeParameters */
        start local 3 // java.util.List typeParameters
         1: .line 158
            aload 3 /* typeParameters */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 3
         2: .line 159
            aload 2 /* toBeScanned */
            areturn
         3: .line 161
      StackMap locals: java.util.List
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 3 /* typeParameters */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 4 /* scanningList */
        start local 4 // java.util.List scanningList
         4: .line 162
            aload 4 /* scanningList */
            aload 2 /* toBeScanned */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 163
            aload 4 /* scanningList */
            areturn
        end local 4 // java.util.List scanningList
        end local 3 // java.util.List typeParameters
        end local 2 // java.util.List toBeScanned
        end local 1 // javax.lang.model.element.Parameterizable element
        end local 0 // javax.lang.model.util.ElementScanner14 this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Ljavax/lang/model/util/ElementScanner14<TR;TP;>;
            0    6     1         element  Ljavax/lang/model/element/Parameterizable;
            0    6     2     toBeScanned  Ljava/util/List<+Ljavax/lang/model/element/Element;>;
            1    6     3  typeParameters  Ljava/util/List<+Ljavax/lang/model/element/TypeParameterElement;>;
            4    6     4    scanningList  Ljava/util/List<Ljavax/lang/model/element/Element;>;
    Signature: (Ljavax/lang/model/element/Parameterizable;Ljava/util/List<+Ljavax/lang/model/element/Element;>;)Ljava/util/List<+Ljavax/lang/model/element/Element;>;
    MethodParameters:
             Name  Flags
      element      
      toBeScanned  

  public R visitRecordComponent(javax.lang.model.element.RecordComponentElement, );
    descriptor: (Ljavax/lang/model/element/RecordComponentElement;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner14 this
        start local 1 // javax.lang.model.element.RecordComponentElement e
        start local 2 // java.lang.Object p
         0: .line 179
            aload 0 /* this */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.RecordComponentElement.getEnclosedElements:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner14.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // javax.lang.model.element.RecordComponentElement e
        end local 0 // javax.lang.model.util.ElementScanner14 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner14<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/RecordComponentElement;
            0    1     2     p  TP;
    Signature: (Ljavax/lang/model/element/RecordComponentElement;TP;)TR;
    MethodParameters:
      Name  Flags
      e     
      p     
}
Signature: <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/ElementScanner9<TR;TP;>;
SourceFile: "ElementScanner14.java"
InnerClasses:
  public final Feature = jdk.internal.PreviewFeature$Feature of jdk.internal.PreviewFeature
    RuntimeVisibleAnnotations: 
      javax.annotation.processing.SupportedSourceVersion(value = javax.lang.model.SourceVersion.RELEASE_14:Ljavax/lang/model/SourceVersion;)
    RuntimeInvisibleAnnotations: 
      jdk.internal.PreviewFeature(feature = jdk.internal.PreviewFeature$Feature.RECORDS:Ljdk/internal/PreviewFeature$Feature;, essentialAPI = false)