.class Lcom/google/gson/internal/ConstructorConstructor$5; .super Ljava/lang/Object; .source "ConstructorConstructor.java" # interfaces .implements Lcom/google/gson/internal/ObjectConstructor; # annotations .annotation system Ldalvik/annotation/EnclosingMethod; value = Lcom/google/gson/internal/ConstructorConstructor;->newSpecialCollectionConstructor(Ljava/lang/reflect/Type;Ljava/lang/Class;)Lcom/google/gson/internal/ObjectConstructor; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x0 name = null .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/lang/Object;", "Lcom/google/gson/internal/ObjectConstructor<", "TT;>;" } .end annotation # instance fields .field final synthetic val$type:Ljava/lang/reflect/Type; # direct methods .method constructor (Ljava/lang/reflect/Type;)V .registers 2 .line 163 iput-object p1, p0, Lcom/google/gson/internal/ConstructorConstructor$5;->val$type:Ljava/lang/reflect/Type; invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method # virtual methods .method public construct()Ljava/lang/Object; .registers 4 .annotation system Ldalvik/annotation/Signature; value = { "()TT;" } .end annotation .line 165 iget-object v0, p0, Lcom/google/gson/internal/ConstructorConstructor$5;->val$type:Ljava/lang/reflect/Type; instance-of v1, v0, Ljava/lang/reflect/ParameterizedType; const-string v2, "Invalid EnumSet type: " if-eqz v1, :cond_35 .line 166 check-cast v0, Ljava/lang/reflect/ParameterizedType; invoke-interface {v0}, Ljava/lang/reflect/ParameterizedType;->getActualTypeArguments()[Ljava/lang/reflect/Type; move-result-object v0 const/4 v1, 0x0 aget-object v0, v0, v1 .line 167 instance-of v1, v0, Ljava/lang/Class; if-eqz v1, :cond_1c .line 169 check-cast v0, Ljava/lang/Class; invoke-static {v0}, Ljava/util/EnumSet;->noneOf(Ljava/lang/Class;)Ljava/util/EnumSet; move-result-object v0 return-object v0 .line 172 :cond_1c new-instance v0, Lcom/google/gson/JsonIOException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget-object v2, p0, Lcom/google/gson/internal/ConstructorConstructor$5;->val$type:Ljava/lang/reflect/Type; invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v2 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Lcom/google/gson/JsonIOException;->(Ljava/lang/String;)V throw v0 .line 175 :cond_35 new-instance v0, Lcom/google/gson/JsonIOException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget-object v2, p0, Lcom/google/gson/internal/ConstructorConstructor$5;->val$type:Ljava/lang/reflect/Type; invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v2 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Lcom/google/gson/JsonIOException;->(Ljava/lang/String;)V throw v0 .end method