public class javax.lang.model.util.ElementScanner6<R, P> extends javax.lang.model.util.AbstractElementVisitor6<R, P>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.lang.model.util.ElementScanner6
  super_class: javax.lang.model.util.AbstractElementVisitor6
{
  protected final R DEFAULT_VALUE;
    descriptor: Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: TR;

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.util.ElementScanner6 this
         0: .line 110
            aload 0 /* this */
            invokespecial javax.lang.model.util.AbstractElementVisitor6.<init>:()V
         1: .line 111
            aload 0 /* this */
            aconst_null
            putfield javax.lang.model.util.ElementScanner6.DEFAULT_VALUE:Ljava/lang/Object;
         2: .line 112
            return
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  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.ElementScanner6 this
        start local 1 // java.lang.Object defaultValue
         0: .line 123
            aload 0 /* this */
            invokespecial javax.lang.model.util.AbstractElementVisitor6.<init>:()V
         1: .line 124
            aload 0 /* this */
            aload 1 /* defaultValue */
            putfield javax.lang.model.util.ElementScanner6.DEFAULT_VALUE:Ljava/lang/Object;
         2: .line 125
            return
        end local 1 // java.lang.Object defaultValue
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    3     1  defaultValue  TR;
    Signature: (TR;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
              Name  Flags
      defaultValue  

  public final R scan(java.lang.Iterable<? extends javax.lang.model.element.Element>, );
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner6 this
        start local 1 // java.lang.Iterable iterable
        start local 2 // java.lang.Object p
         0: .line 138
            aload 0 /* this */
            getfield javax.lang.model.util.ElementScanner6.DEFAULT_VALUE:Ljava/lang/Object;
            astore 3 /* result */
        start local 3 // java.lang.Object result
         1: .line 139
            aload 1 /* iterable */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 5
            goto 4
      StackMap locals: javax.lang.model.util.ElementScanner6 java.lang.Iterable java.lang.Object java.lang.Object top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.element.Element
            astore 4 /* e */
        start local 4 // javax.lang.model.element.Element e
         3: .line 140
            aload 0 /* this */
            aload 4 /* e */
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.scan:(Ljavax/lang/model/element/Element;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* result */
        end local 4 // javax.lang.model.element.Element e
         4: .line 139
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 141
            aload 3 /* result */
            areturn
        end local 3 // java.lang.Object result
        end local 2 // java.lang.Object p
        end local 1 // java.lang.Iterable iterable
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    6     1  iterable  Ljava/lang/Iterable<+Ljavax/lang/model/element/Element;>;
            0    6     2         p  TP;
            1    6     3    result  TR;
            3    4     4         e  Ljavax/lang/model/element/Element;
    Signature: (Ljava/lang/Iterable<+Ljavax/lang/model/element/Element;>;TP;)TR;
    MethodParameters:
          Name  Flags
      iterable  
      p         

  public R scan(javax.lang.model.element.Element, );
    descriptor: (Ljavax/lang/model/element/Element;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.ElementScanner6 this
        start local 1 // javax.lang.model.element.Element e
        start local 2 // java.lang.Object p
         0: .line 153
            aload 1 /* e */
            aload 0 /* this */
            aload 2 /* p */
            invokeinterface javax.lang.model.element.Element.accept:(Ljavax/lang/model/element/ElementVisitor;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // javax.lang.model.element.Element e
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/Element;
            0    1     2     p  TP;
    Signature: (Ljavax/lang/model/element/Element;TP;)TR;
    MethodParameters:
      Name  Flags
      e     
      p     

  public final R scan(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.lang.model.util.ElementScanner6 this
        start local 1 // javax.lang.model.element.Element e
         0: .line 163
            aload 0 /* this */
            aload 1 /* e */
            aconst_null
            invokevirtual javax.lang.model.util.ElementScanner6.scan:(Ljavax/lang/model/element/Element;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // javax.lang.model.element.Element e
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/Element;
    Signature: (Ljavax/lang/model/element/Element;)TR;
    MethodParameters:
      Name  Flags
      e     

  public R visitPackage(javax.lang.model.element.PackageElement, );
    descriptor: (Ljavax/lang/model/element/PackageElement;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.ElementScanner6 this
        start local 1 // javax.lang.model.element.PackageElement e
        start local 2 // java.lang.Object p
         0: .line 174
            aload 0 /* this */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.PackageElement.getEnclosedElements:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.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.PackageElement e
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/PackageElement;
            0    1     2     p  TP;
    Signature: (Ljavax/lang/model/element/PackageElement;TP;)TR;
    MethodParameters:
      Name  Flags
      e     
      p     

  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=3, locals=3, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner6 this
        start local 1 // javax.lang.model.element.TypeElement e
        start local 2 // java.lang.Object p
         0: .line 185
            aload 0 /* this */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.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.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner6<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 visitVariable(javax.lang.model.element.VariableElement, );
    descriptor: (Ljavax/lang/model/element/VariableElement;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.ElementScanner6 this
        start local 1 // javax.lang.model.element.VariableElement e
        start local 2 // java.lang.Object p
         0: .line 200
            aload 1 /* e */
            invokeinterface javax.lang.model.element.VariableElement.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.RESOURCE_VARIABLE:Ljavax/lang/model/element/ElementKind;
            if_acmpeq 2
         1: .line 201
            aload 0 /* this */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.VariableElement.getEnclosedElements:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
         2: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* e */
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.visitUnknown:(Ljavax/lang/model/element/Element;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // javax.lang.model.element.VariableElement e
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    3     1     e  Ljavax/lang/model/element/VariableElement;
            0    3     2     p  TP;
    Signature: (Ljavax/lang/model/element/VariableElement;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=3, locals=3, args_size=3
        start local 0 // javax.lang.model.util.ElementScanner6 this
        start local 1 // javax.lang.model.element.ExecutableElement e
        start local 2 // java.lang.Object p
         0: .line 214
            aload 0 /* this */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.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.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner6<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     

  public R visitTypeParameter(javax.lang.model.element.TypeParameterElement, );
    descriptor: (Ljavax/lang/model/element/TypeParameterElement;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.ElementScanner6 this
        start local 1 // javax.lang.model.element.TypeParameterElement e
        start local 2 // java.lang.Object p
         0: .line 225
            aload 0 /* this */
            aload 1 /* e */
            invokeinterface javax.lang.model.element.TypeParameterElement.getEnclosedElements:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual javax.lang.model.util.ElementScanner6.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.TypeParameterElement e
        end local 0 // javax.lang.model.util.ElementScanner6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/lang/model/util/ElementScanner6<TR;TP;>;
            0    1     1     e  Ljavax/lang/model/element/TypeParameterElement;
            0    1     2     p  TP;
    Signature: (Ljavax/lang/model/element/TypeParameterElement;TP;)TR;
    MethodParameters:
      Name  Flags
      e     
      p     
}
Signature: <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/AbstractElementVisitor6<TR;TP;>;
SourceFile: "ElementScanner6.java"
    RuntimeVisibleAnnotations: 
      javax.annotation.processing.SupportedSourceVersion(value = javax.lang.model.SourceVersion.RELEASE_6:Ljavax/lang/model/SourceVersion;)