|
@@ -99,7 +99,7 @@ namespace Invercargill {
|
|
|
return new SkipQuery<T>(this, count);
|
|
|
}
|
|
|
|
|
|
- public virtual Tout aggrigate<Tout>(Tout initial, AggrigateDelegate aggrigate_func) {
|
|
|
+ public virtual Tout aggrigate<Tout>(Tout initial, AggrigateDelegate<Tout, T> aggrigate_func) {
|
|
|
var aggrigate = initial;
|
|
|
iterate(i => {
|
|
|
aggrigate = aggrigate_func(aggrigate, i);
|
|
@@ -178,6 +178,17 @@ namespace Invercargill {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
+ public virtual string to_string(TransformDelegate<T, string> stringifier, string seperator = "") {
|
|
|
+ bool is_first = false;
|
|
|
+ return aggrigate<string>("", (s, v) => {
|
|
|
+ if(is_first) {
|
|
|
+ is_first = true;
|
|
|
+ return stringifier(v);
|
|
|
+ }
|
|
|
+ return s + seperator + stringifier(v);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
}
|