public static StateConfiguration <TState, TTrigger> Permit <TState, TTrigger>( this StateConfiguration <TState, TTrigger> config, TTrigger trigger, TState resultingState, Action onTriggerAction) { Contract.NotNull(onTriggerAction != null, nameof(onTriggerAction)); return(config.Permit(trigger, resultingState, t => onTriggerAction())); }
public static StateConfiguration <TState, TTrigger> Permit <TState, TTrigger, TArgument>(this StateConfiguration <TState, TTrigger> config, ParameterizedTrigger <TTrigger, TArgument> trigger, TState resultingState, Action <TArgument> onTriggerAction) { Contract.NotNull(onTriggerAction != null, nameof(onTriggerAction)); return(config.Permit(trigger, resultingState, (t, a) => onTriggerAction (a))); }