示例#1
0
 public void Setup()
 {
     _plugins    = new ConditionalPlugins <IPluginType, Context>(true);
     _pluginsDsl = new ConditionalPluginsDsl <IPluginType, Context>(_plugins);
 }
示例#2
0
        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);
        }