public Rule Update(RuleTrigger newTrigger) { Guard.NotNull(newTrigger); if (newTrigger.GetType() != trigger.GetType()) { throw new ArgumentException("New trigger has another type.", nameof(newTrigger)); } newTrigger.Freeze(); return(Clone(clone => { clone.trigger = newTrigger; })); }
private void SetTrigger(RuleTrigger newTrigger) { trigger = newTrigger; trigger.Freeze(); }