using JD.Kernel.StaticHelpers; namespace JD.TeaBoxAddinSystem.Addins.Description.Conditions { /// /// A condition that implements the NOT operator. /// internal class NotCondition : CompositeCondition { #region Constructor /// /// Constructor. /// /// public NotCondition(Condition innerCondition) : base(innerCondition) { Throw.IfNull(innerCondition, "innerCondition"); } #endregion #region Methods /// /// Overriden. /// /// public override bool Evaluate() { System.Diagnostics.Debug.Assert(InnerConditions.Length == 1); return !InnerConditions[0].Evaluate(); } /// /// Overriden. /// /// public override string ToString() { System.Diagnostics.Debug.Assert(InnerConditions.Length == 1); return $"!{InnerConditions[0]}"; } #endregion } }