Offset 1, 40 lines modifiedOffset 1, 171 lines modified
1 .class·Lcom/google/common/collect/ImmutableList$Itr;1 .class·Lcom/google/common/collect/ImmutableList$Itr;
2 .super·Lcom/google/common/collect/AbstractIndexedListIterator;2 .super·Lcom/google/common/collect/UnmodifiableListIterator;
3 .source·"ImmutableList.java"3 .source·"ImmutableList.java"
  
  
4 #·instance·fields4 #·instance·fields
5 .field·private·final·list:Lcom/google/common/collect/ImmutableList;5 .field·private·final·list:Lcom/google/common/collect/ImmutableList;
  
 6 .field·private·position:I
  
 7 .field·private·final·size:I
  
  
6 #·direct·methods8 #·direct·methods
7 .method·constructor·<init>(Lcom/google/common/collect/ImmutableList;I)V9 .method·constructor·<init>(Lcom/google/common/collect/ImmutableList;I)V
8 ····.locals·110 ····.locals·1
  
9 ····.line·111 ····.line·1
10 ····invoke-virtual·{p1},·Ljava/util/AbstractCollection;->size()I12 ····invoke-virtual·{p1},·Ljava/util/AbstractCollection;->size()I
  
11 ····move-result·v013 ····move-result·v0
  
12 ····invoke-direct·{p0,·v0,·p2},·Lcom/google/common/collect/AbstractIndexedListIterator;-><init>(II)V 
  
13 ····.line·214 ····.line·2
 15 ····invoke-direct·{p0},·Lcom/google/common/collect/UnmodifiableListIterator;-><init>()V
  
 16 ····.line·3
 17 ····invoke-static·{p2,·v0},·Lcom/google/common/base/Ascii;->checkPositionIndex(II)I
  
 18 ····.line·4
 19 ····iput·v0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->size:I
  
 20 ····.line·5
 21 ····iput·p2,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 22 ····.line·6
14 ····iput-object·p1,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->list:Lcom/google/common/collect/ImmutableList;23 ····iput-object·p1,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->list:Lcom/google/common/collect/ImmutableList;
  
15 ····return-void24 ····return-void
16 .end·method25 .end·method
  
  
17 #·virtual·methods26 #·virtual·methods
18 .method·protected·get(I)Ljava/lang/Object;27 .method·public·final·hasNext()Z
 28 ····.locals·1
  
 29 ····.line·1
 30 ····iget·v0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 31 ····iget·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->size:I
  
 32 ····if-ge·v0,·p0,·:cond_0
  
 33 ····const/4·p0,·0x1
  
 34 ····goto·:goto_0
  
 35 ····:cond_0
 36 ····const/4·p0,·0x0
  
 37 ····:goto_0
 38 ····return·p0
 39 .end·method
  
 40 .method·public·final·hasPrevious()Z
19 ····.locals·041 ····.locals·0
  
20 ····.line·142 ····.line·1
 43 ····iget·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 44 ····if-lez·p0,·:cond_0
  
 45 ····const/4·p0,·0x1
  
 46 ····goto·:goto_0
  
 47 ····:cond_0
 48 ····const/4·p0,·0x0
  
 49 ····:goto_0
 50 ····return·p0
 51 .end·method
  
 52 .method·public·final·next()Ljava/lang/Object;
 53 ····.locals·2
  
 54 ····.line·1
 55 ····invoke-virtual·{p0},·Lcom/google/common/collect/ImmutableList$Itr;->hasNext()Z
  
 56 ····move-result·v0
  
 57 ····if-eqz·v0,·:cond_0
  
 58 ····.line·2
 59 ····iget·v0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 60 ····add-int/lit8·v1,·v0,·0x1
  
 61 ····iput·v1,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 62 ····.line·3
21 ····iget-object·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->list:Lcom/google/common/collect/ImmutableList;63 ····iget-object·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->list:Lcom/google/common/collect/ImmutableList;
  
22 ····invoke-interface·{p0,·p1},·Ljava/util/List;->get(I)Ljava/lang/Object;64 ····invoke-interface·{p0,·v0},·Ljava/util/List;->get(I)Ljava/lang/Object;
  
23 ····move-result-object·p065 ····move-result-object·p0
  
24 ····return-object·p066 ····return-object·p0
  
 67 ····.line·4
 68 ····:cond_0
 69 ····new-instance·p0,·Ljava/util/NoSuchElementException;
  
 70 ····invoke-direct·{p0},·Ljava/util/NoSuchElementException;-><init>()V
  
 71 ····throw·p0
 72 .end·method
  
 73 .method·public·final·nextIndex()I
 74 ····.locals·0
  
 75 ····.line·1
 76 ····iget·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 77 ····return·p0
 78 .end·method
  
 79 .method·public·final·previous()Ljava/lang/Object;
 80 ····.locals·1
  
 81 ····.line·1
 82 ····invoke-virtual·{p0},·Lcom/google/common/collect/ImmutableList$Itr;->hasPrevious()Z
  
 83 ····move-result·v0
  
 84 ····if-eqz·v0,·:cond_0
  
 85 ····.line·2
 86 ····iget·v0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 87 ····add-int/lit8·v0,·v0,·-0x1
  
 88 ····iput·v0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 89 ····.line·3
 90 ····iget-object·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->list:Lcom/google/common/collect/ImmutableList;
  
 91 ····invoke-interface·{p0,·v0},·Ljava/util/List;->get(I)Ljava/lang/Object;
  
 92 ····move-result-object·p0
  
 93 ····return-object·p0
  
 94 ····.line·4
 95 ····:cond_0
 96 ····new-instance·p0,·Ljava/util/NoSuchElementException;
  
 97 ····invoke-direct·{p0},·Ljava/util/NoSuchElementException;-><init>()V
  
 98 ····throw·p0
 99 .end·method
  
 100 .method·public·final·previousIndex()I
 101 ····.locals·0
  
 102 ····.line·1
 103 ····iget·p0,·p0,·Lcom/google/common/collect/ImmutableList$Itr;->position:I
  
 104 ····add-int/lit8·p0,·p0,·-0x1
  
 105 ····return·p0
25 .end·method106 .end·method