.class final Lcom/google/gson/internal/LinkedTreeMap$Node; .super Ljava/lang/Object; .source "LinkedTreeMap.java" # interfaces .implements Ljava/util/Map$Entry; # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lcom/google/gson/internal/LinkedTreeMap; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x18 name = "Node" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "", "Ljava/lang/Object;", "Ljava/util/Map$Entry<", "TK;TV;>;" } .end annotation # instance fields .field final allowNullValue:Z .field height:I .field final key:Ljava/lang/Object; .annotation system Ldalvik/annotation/Signature; value = { "TK;" } .end annotation .end field .field left:Lcom/google/gson/internal/LinkedTreeMap$Node; .annotation system Ldalvik/annotation/Signature; value = { "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .end field .field next:Lcom/google/gson/internal/LinkedTreeMap$Node; .annotation system Ldalvik/annotation/Signature; value = { "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .end field .field parent:Lcom/google/gson/internal/LinkedTreeMap$Node; .annotation system Ldalvik/annotation/Signature; value = { "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .end field .field prev:Lcom/google/gson/internal/LinkedTreeMap$Node; .annotation system Ldalvik/annotation/Signature; value = { "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .end field .field right:Lcom/google/gson/internal/LinkedTreeMap$Node; .annotation system Ldalvik/annotation/Signature; value = { "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .end field .field value:Ljava/lang/Object; .annotation system Ldalvik/annotation/Signature; value = { "TV;" } .end annotation .end field # direct methods .method constructor (Z)V .registers 3 .line 474 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x0 .line 475 iput-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->key:Ljava/lang/Object; .line 476 iput-boolean p1, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->allowNullValue:Z .line 477 iput-object p0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->prev:Lcom/google/gson/internal/LinkedTreeMap$Node; iput-object p0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->next:Lcom/google/gson/internal/LinkedTreeMap$Node; return-void .end method .method constructor (ZLcom/google/gson/internal/LinkedTreeMap$Node;Ljava/lang/Object;Lcom/google/gson/internal/LinkedTreeMap$Node;Lcom/google/gson/internal/LinkedTreeMap$Node;)V .registers 6 .annotation system Ldalvik/annotation/Signature; value = { "(Z", "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;TK;", "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;", "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;)V" } .end annotation .line 481 invoke-direct {p0}, Ljava/lang/Object;->()V .line 482 iput-object p2, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->parent:Lcom/google/gson/internal/LinkedTreeMap$Node; .line 483 iput-object p3, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->key:Ljava/lang/Object; .line 484 iput-boolean p1, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->allowNullValue:Z const/4 p1, 0x1 .line 485 iput p1, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->height:I .line 486 iput-object p4, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->next:Lcom/google/gson/internal/LinkedTreeMap$Node; .line 487 iput-object p5, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->prev:Lcom/google/gson/internal/LinkedTreeMap$Node; .line 488 iput-object p0, p5, Lcom/google/gson/internal/LinkedTreeMap$Node;->next:Lcom/google/gson/internal/LinkedTreeMap$Node; .line 489 iput-object p0, p4, Lcom/google/gson/internal/LinkedTreeMap$Node;->prev:Lcom/google/gson/internal/LinkedTreeMap$Node; return-void .end method # virtual methods .method public equals(Ljava/lang/Object;)Z .registers 5 .line 510 instance-of v0, p1, Ljava/util/Map$Entry; const/4 v1, 0x0 if-eqz v0, :cond_32 .line 511 check-cast p1, Ljava/util/Map$Entry; .line 512 iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->key:Ljava/lang/Object; if-nez v0, :cond_12 invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object; move-result-object v0 if-nez v0, :cond_32 goto :goto_1c :cond_12 invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object; move-result-object v2 invoke-virtual {v0, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_32 :goto_1c iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->value:Ljava/lang/Object; if-nez v0, :cond_27 .line 513 invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object; move-result-object p1 if-nez p1, :cond_32 goto :goto_31 :cond_27 invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object; move-result-object p1 invoke-virtual {v0, p1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result p1 if-eqz p1, :cond_32 :goto_31 const/4 v1, 0x1 :cond_32 return v1 .end method .method public first()Lcom/google/gson/internal/LinkedTreeMap$Node; .registers 4 .annotation system Ldalvik/annotation/Signature; value = { "()", "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .line 532 iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->left:Lcom/google/gson/internal/LinkedTreeMap$Node; move-object v1, p0 :goto_3 if-eqz v0, :cond_b .line 535 iget-object v1, v0, Lcom/google/gson/internal/LinkedTreeMap$Node;->left:Lcom/google/gson/internal/LinkedTreeMap$Node; move-object v2, v1 move-object v1, v0 move-object v0, v2 goto :goto_3 :cond_b return-object v1 .end method .method public getKey()Ljava/lang/Object; .registers 2 .annotation system Ldalvik/annotation/Signature; value = { "()TK;" } .end annotation .line 493 iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->key:Ljava/lang/Object; return-object v0 .end method .method public getValue()Ljava/lang/Object; .registers 2 .annotation system Ldalvik/annotation/Signature; value = { "()TV;" } .end annotation .line 497 iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->value:Ljava/lang/Object; return-object v0 .end method .method public hashCode()I .registers 4 .line 519 iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->key:Ljava/lang/Object; const/4 v1, 0x0 if-nez v0, :cond_7 move v0, v1 goto :goto_b :cond_7 invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I move-result v0 .line 520 :goto_b iget-object v2, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->value:Ljava/lang/Object; if-nez v2, :cond_10 goto :goto_14 :cond_10 invoke-virtual {v2}, Ljava/lang/Object;->hashCode()I move-result v1 :goto_14 xor-int/2addr v0, v1 return v0 .end method .method public last()Lcom/google/gson/internal/LinkedTreeMap$Node; .registers 4 .annotation system Ldalvik/annotation/Signature; value = { "()", "Lcom/google/gson/internal/LinkedTreeMap$Node<", "TK;TV;>;" } .end annotation .line 545 iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->right:Lcom/google/gson/internal/LinkedTreeMap$Node; move-object v1, p0 :goto_3 if-eqz v0, :cond_b .line 548 iget-object v1, v0, Lcom/google/gson/internal/LinkedTreeMap$Node;->right:Lcom/google/gson/internal/LinkedTreeMap$Node; move-object v2, v1 move-object v1, v0 move-object v0, v2 goto :goto_3 :cond_b return-object v1 .end method .method public setValue(Ljava/lang/Object;)Ljava/lang/Object; .registers 3 .annotation system Ldalvik/annotation/Signature; value = { "(TV;)TV;" } .end annotation if-nez p1, :cond_f .line 501 iget-boolean v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->allowNullValue:Z if-eqz v0, :cond_7 goto :goto_f .line 502 :cond_7 new-instance p1, Ljava/lang/NullPointerException; const-string v0, "value == null" invoke-direct {p1, v0}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw p1 .line 504 :cond_f :goto_f iget-object v0, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->value:Ljava/lang/Object; .line 505 iput-object p1, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->value:Ljava/lang/Object; return-object v0 .end method .method public toString()Ljava/lang/String; .registers 3 .line 524 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V iget-object v1, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->key:Ljava/lang/Object; invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget-object v1, p0, Lcom/google/gson/internal/LinkedTreeMap$Node;->value:Ljava/lang/Object; invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method