|
@@ -211,6 +211,18 @@ namespace Invercargill {
|
|
return pair(other).all(p => equals(p.value1, p.value2));
|
|
return pair(other).all(p => equals(p.value1, p.value2));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public virtual Enumerable<T> act(ItemDelegate<T> handler) {
|
|
|
|
+ return select<T>(i => {
|
|
|
|
+ handler(i);
|
|
|
|
+ return i;
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public virtual Enumerable<T> unique(EqualityDelegate<T> comparison) {
|
|
|
|
+ var vec = new Vector<T>();
|
|
|
|
+ return this.where(i => vec.no(e => comparison(i, e))).act(i => vec.add(i));
|
|
|
|
+ }
|
|
|
|
+
|
|
public virtual Enumerable<T> with(T item) {
|
|
public virtual Enumerable<T> with(T item) {
|
|
var seq = new Series<T>();
|
|
var seq = new Series<T>();
|
|
seq.add(item);
|
|
seq.add(item);
|