.class public final Lcom/google/gson/internal/Primitives; .super Ljava/lang/Object; .source "Primitives.java" # static fields .field private static final PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Map<", "Ljava/lang/Class<", "*>;", "Ljava/lang/Class<", "*>;>;" } .end annotation .end field .field private static final WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Map<", "Ljava/lang/Class<", "*>;", "Ljava/lang/Class<", "*>;>;" } .end annotation .end field # direct methods .method static constructor ()V .locals 4 .line 45 new-instance v0, Ljava/util/HashMap; const/16 v1, 0x10 invoke-direct {v0, v1}, Ljava/util/HashMap;->(I)V .line 46 .local v0, "primToWrap":Ljava/util/Map;, "Ljava/util/Map;Ljava/lang/Class<*>;>;" new-instance v2, Ljava/util/HashMap; invoke-direct {v2, v1}, Ljava/util/HashMap;->(I)V move-object v1, v2 .line 48 .local v1, "wrapToPrim":Ljava/util/Map;, "Ljava/util/Map;Ljava/lang/Class<*>;>;" sget-object v2, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Boolean; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 49 sget-object v2, Ljava/lang/Byte;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Byte; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 50 sget-object v2, Ljava/lang/Character;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Character; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 51 sget-object v2, Ljava/lang/Double;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Double; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 52 sget-object v2, Ljava/lang/Float;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Float; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 53 sget-object v2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Integer; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 54 sget-object v2, Ljava/lang/Long;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Long; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 55 sget-object v2, Ljava/lang/Short;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Short; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 56 sget-object v2, Ljava/lang/Void;->TYPE:Ljava/lang/Class; const-class v3, Ljava/lang/Void; invoke-static {v0, v1, v2, v3}, Lcom/google/gson/internal/Primitives;->add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .line 58 invoke-static {v0}, Ljava/util/Collections;->unmodifiableMap(Ljava/util/Map;)Ljava/util/Map; move-result-object v2 sput-object v2, Lcom/google/gson/internal/Primitives;->PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map; .line 59 invoke-static {v1}, Ljava/util/Collections;->unmodifiableMap(Ljava/util/Map;)Ljava/util/Map; move-result-object v2 sput-object v2, Lcom/google/gson/internal/Primitives;->WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map; .line 60 .end local v0 # "primToWrap":Ljava/util/Map;, "Ljava/util/Map;Ljava/lang/Class<*>;>;" .end local v1 # "wrapToPrim":Ljava/util/Map;, "Ljava/util/Map;Ljava/lang/Class<*>;>;" return-void .end method .method private constructor ()V .locals 1 .line 32 invoke-direct {p0}, Ljava/lang/Object;->()V .line 33 new-instance v0, Ljava/lang/UnsupportedOperationException; invoke-direct {v0}, Ljava/lang/UnsupportedOperationException;->()V throw v0 .end method .method private static add(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Map<", "Ljava/lang/Class<", "*>;", "Ljava/lang/Class<", "*>;>;", "Ljava/util/Map<", "Ljava/lang/Class<", "*>;", "Ljava/lang/Class<", "*>;>;", "Ljava/lang/Class<", "*>;", "Ljava/lang/Class<", "*>;)V" } .end annotation .line 64 .local p0, "forward":Ljava/util/Map;, "Ljava/util/Map;Ljava/lang/Class<*>;>;" .local p1, "backward":Ljava/util/Map;, "Ljava/util/Map;Ljava/lang/Class<*>;>;" .local p2, "key":Ljava/lang/Class;, "Ljava/lang/Class<*>;" .local p3, "value":Ljava/lang/Class;, "Ljava/lang/Class<*>;" invoke-interface {p0, p2, p3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 65 invoke-interface {p1, p3, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 66 return-void .end method .method public static isPrimitive(Ljava/lang/reflect/Type;)Z .locals 1 .param p0, "type" # Ljava/lang/reflect/Type; .line 72 sget-object v0, Lcom/google/gson/internal/Primitives;->PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map; invoke-interface {v0, p0}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z move-result v0 return v0 .end method .method public static isWrapperType(Ljava/lang/reflect/Type;)Z .locals 2 .param p0, "type" # Ljava/lang/reflect/Type; .line 82 sget-object v0, Lcom/google/gson/internal/Primitives;->WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map; .line 83 invoke-static {p0}, Lcom/google/gson/internal/$Gson$Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 .line 82 invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z move-result v0 return v0 .end method .method public static unwrap(Ljava/lang/Class;)Ljava/lang/Class; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Class<", "TT;>;)", "Ljava/lang/Class<", "TT;>;" } .end annotation .line 115 .local p0, "type":Ljava/lang/Class;, "Ljava/lang/Class;" sget-object v0, Lcom/google/gson/internal/Primitives;->WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map; .line 116 invoke-static {p0}, Lcom/google/gson/internal/$Gson$Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 .line 115 invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/Class; .line 117 .local v0, "unwrapped":Ljava/lang/Class;, "Ljava/lang/Class;" if-nez v0, :cond_0 move-object v1, p0 goto :goto_0 :cond_0 move-object v1, v0 :goto_0 return-object v1 .end method .method public static wrap(Ljava/lang/Class;)Ljava/lang/Class; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Class<", "TT;>;)", "Ljava/lang/Class<", "TT;>;" } .end annotation .line 98 .local p0, "type":Ljava/lang/Class;, "Ljava/lang/Class;" sget-object v0, Lcom/google/gson/internal/Primitives;->PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map; .line 99 invoke-static {p0}, Lcom/google/gson/internal/$Gson$Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 .line 98 invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/Class; .line 100 .local v0, "wrapped":Ljava/lang/Class;, "Ljava/lang/Class;" if-nez v0, :cond_0 move-object v1, p0 goto :goto_0 :cond_0 move-object v1, v0 :goto_0 return-object v1 .end method