namespace Invercargill { private class TransformQuery : BaseQuery { private TransformDelegate transform_func; public TransformQuery(Enumerable input, TransformDelegate transform) { this.input = input; transform_func = x => transform(x); } public override bool iterate_if (Invercargill.PredicateDelegate handler) { return input.iterate_if(i => handler(transform_func(i))); } } }