public Transformer(IEnumerable<ITransformHandler> handlers) { handlers.Each(x => _handlers[x.Key] = x); _handlers["inner"] = new InnerTransformHandler(this); _handlers.OnMissing = key => { throw new ArgumentOutOfRangeException(nameof(key), key, "No transformation handler is available for '" + key + "'"); }; }