• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package autotest.common;
2 
3 import java.util.AbstractList;
4 import java.util.List;
5 
6 public class UnmodifiableSublistView<T> extends AbstractList<T> {
7     protected List<T> backingList;
8     protected int start, size;
9 
UnmodifiableSublistView(List<T> list, int start, int size)10     public UnmodifiableSublistView(List<T> list, int start, int size) {
11         assert start >= 0;
12         assert size >= 0;
13         assert start + size <= list.size();
14 
15         this.backingList = list;
16         this.start = start;
17         this.size = size;
18     }
19 
20     @Override
get(int arg0)21     public T get(int arg0) {
22         if (arg0 >= size())
23             throw new IndexOutOfBoundsException();
24         return backingList.get(arg0 + start);
25     }
26 
27     @Override
size()28     public int size() {
29         return this.size;
30     }
31 }
32