public void Setup() { _plugins = new ConditionalPlugins <IPluginType, Context>(true); _pluginsDsl = new ConditionalPluginsDsl <IPluginType, Context>(_plugins); }
public static ConditionalPluginsDsl <TPlugin, TContext> Append <TPlugin, TContext>(this ConditionalPluginsDsl <TPlugin, TContext> definitions, Type type, Func <TContext, bool> predicate = null, bool @default = false) { Type <ConditionalPluginsDsl <TPlugin, TContext> > .Method(x => x.Append <TPlugin>(y => false, false))? .GetGenericMethodDefinition().MakeGenericMethod(type) .Invoke(definitions, new object[] { predicate, @default }); return(definitions); }