]> WPIA git - gigi.git/blob - src/club/wpia/gigi/output/IterableIterable.java
upd: rename package name and all references to it
[gigi.git] / src / club / wpia / gigi / output / IterableIterable.java
1 package club.wpia.gigi.output;
2
3 import java.util.Iterator;
4 import java.util.Map;
5
6 import club.wpia.gigi.localisation.Language;
7 import club.wpia.gigi.output.template.IterableDataset;
8
9 public abstract class IterableIterable<T> implements IterableDataset {
10
11     private Iterator<T> dt;
12
13     protected int i = 0;
14
15     public IterableIterable(Iterable<T> dt) {
16         this.dt = dt.iterator();
17     }
18
19     @Override
20     public boolean next(Language l, Map<String, Object> vars) {
21         if ( !dt.hasNext()) {
22             return false;
23         }
24         apply(dt.next(), l, vars);
25         i++;
26         return true;
27     }
28
29     public abstract void apply(T t, Language l, Map<String, Object> vars);
30
31 }