class com.google.common.reflect.TypeToken$3 extends com.google.common.reflect.TypeVisitor
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.google.common.reflect.TypeToken$3
  super_class: com.google.common.reflect.TypeVisitor
{
  final com.google.common.reflect.TypeToken this$0;
    descriptor: Lcom/google/common/reflect/TypeToken;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.google.common.reflect.TypeToken);
    descriptor: (Lcom/google/common/reflect/TypeToken;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.reflect.TypeToken$3 this
         0: .line 851
            aload 0 /* this */
            aload 1
            putfield com.google.common.reflect.TypeToken$3.this$0:Lcom/google/common/reflect/TypeToken;
            aload 0 /* this */
            invokespecial com.google.common.reflect.TypeVisitor.<init>:()V
            return
        end local 0 // com.google.common.reflect.TypeToken$3 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/reflect/TypeToken$3;
    MethodParameters:
        Name  Flags
      this$0  final

  void visitTypeVariable(java.lang.reflect.TypeVariable<?>);
    descriptor: (Ljava/lang/reflect/TypeVariable;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.reflect.TypeToken$3 this
        start local 1 // java.lang.reflect.TypeVariable type
         0: .line 854
            new java.lang.IllegalArgumentException
            dup
         1: .line 855
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield com.google.common.reflect.TypeToken$3.this$0:Lcom/google/common/reflect/TypeToken;
            getfield com.google.common.reflect.TypeToken.runtimeType:Ljava/lang/reflect/Type;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "contains a type variable and is not safe for the operation"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 854
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.reflect.TypeVariable type
        end local 0 // com.google.common.reflect.TypeToken$3 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/common/reflect/TypeToken$3;
            0    3     1  type  Ljava/lang/reflect/TypeVariable<*>;
    Signature: (Ljava/lang/reflect/TypeVariable<*>;)V
    MethodParameters:
      Name  Flags
      type  

  void visitWildcardType(java.lang.reflect.WildcardType);
    descriptor: (Ljava/lang/reflect/WildcardType;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.reflect.TypeToken$3 this
        start local 1 // java.lang.reflect.WildcardType type
         0: .line 860
            aload 0 /* this */
            aload 1 /* type */
            invokeinterface java.lang.reflect.WildcardType.getLowerBounds:()[Ljava/lang/reflect/Type;
            invokevirtual com.google.common.reflect.TypeToken$3.visit:([Ljava/lang/reflect/Type;)V
         1: .line 861
            aload 0 /* this */
            aload 1 /* type */
            invokeinterface java.lang.reflect.WildcardType.getUpperBounds:()[Ljava/lang/reflect/Type;
            invokevirtual com.google.common.reflect.TypeToken$3.visit:([Ljava/lang/reflect/Type;)V
         2: .line 862
            return
        end local 1 // java.lang.reflect.WildcardType type
        end local 0 // com.google.common.reflect.TypeToken$3 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/common/reflect/TypeToken$3;
            0    3     1  type  Ljava/lang/reflect/WildcardType;
    MethodParameters:
      Name  Flags
      type  

  void visitParameterizedType(java.lang.reflect.ParameterizedType);
    descriptor: (Ljava/lang/reflect/ParameterizedType;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.google.common.reflect.TypeToken$3 this
        start local 1 // java.lang.reflect.ParameterizedType type
         0: .line 866
            aload 0 /* this */
            aload 1 /* type */
            invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
            invokevirtual com.google.common.reflect.TypeToken$3.visit:([Ljava/lang/reflect/Type;)V
         1: .line 867
            aload 0 /* this */
            iconst_1
            anewarray java.lang.reflect.Type
            dup
            iconst_0
            aload 1 /* type */
            invokeinterface java.lang.reflect.ParameterizedType.getOwnerType:()Ljava/lang/reflect/Type;
            aastore
            invokevirtual com.google.common.reflect.TypeToken$3.visit:([Ljava/lang/reflect/Type;)V
         2: .line 868
            return
        end local 1 // java.lang.reflect.ParameterizedType type
        end local 0 // com.google.common.reflect.TypeToken$3 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/common/reflect/TypeToken$3;
            0    3     1  type  Ljava/lang/reflect/ParameterizedType;
    MethodParameters:
      Name  Flags
      type  

  void visitGenericArrayType(java.lang.reflect.GenericArrayType);
    descriptor: (Ljava/lang/reflect/GenericArrayType;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.google.common.reflect.TypeToken$3 this
        start local 1 // java.lang.reflect.GenericArrayType type
         0: .line 872
            aload 0 /* this */
            iconst_1
            anewarray java.lang.reflect.Type
            dup
            iconst_0
            aload 1 /* type */
            invokeinterface java.lang.reflect.GenericArrayType.getGenericComponentType:()Ljava/lang/reflect/Type;
            aastore
            invokevirtual com.google.common.reflect.TypeToken$3.visit:([Ljava/lang/reflect/Type;)V
         1: .line 873
            return
        end local 1 // java.lang.reflect.GenericArrayType type
        end local 0 // com.google.common.reflect.TypeToken$3 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/reflect/TypeToken$3;
            0    2     1  type  Ljava/lang/reflect/GenericArrayType;
    MethodParameters:
      Name  Flags
      type  
}
SourceFile: "TypeToken.java"
EnclosingMethod: com.google.common.reflect.TypeToken.rejectTypeVariables:()Lcom/google/common/reflect/TypeToken;
NestHost: com.google.common.reflect.TypeToken
InnerClasses:
  com.google.common.reflect.TypeToken$3