public static IApplyEventsInternal From <TState, TEvent>(IApplyEvent <TState, TEvent> publicApplier) { var stateType = typeof(TState); var eventType = typeof(TEvent); return(new FunctionalInternalApplier((s, e) => publicApplier.Apply((TState)s, (TEvent)e), (s, e) => s == stateType && (e == eventType || e.IsSubclassOf(eventType)))); }
public IManuallyConfigureEventAppliers WithEventApplier <TState, TEvent>(IApplyEvent <TState, TEvent> stateApplier) => WithEventApplier(typeof(TState), typeof(TEvent), stateApplier);
public static IManuallyConfigureEventAppliers WithEventApplier <TState, TEvent>(this IManuallyConfigureEventAppliers self, IApplyEvent <TState, TEvent> stateApplier) => self.WithEventApplier((FuncEventApplier <TState, TEvent>)stateApplier.Apply);