private void Validate(List <IFactType> factTypes) { if (InputFactTypes.IsNullOrEmpty()) { throw new ArgumentException("factTypes cannot be empty. The desired action should request a fact on entry."); } }
private void ValidateParam(List <IFactType> inputFactTypes, IFactType outputFactType) { if (outputFactType == null) { throw new ArgumentNullException(nameof(outputFactType)); } outputFactType.CannotIsType <ISpecialFact>(nameof(outputFactType)); if (InputFactTypes.Any(factType => factType.EqualsFactType(outputFactType))) { throw new ArgumentException("Cannot request a fact calculated according to the rule.", nameof(inputFactTypes)); } }
/// <inheritdoc/> public override string ToString() { return($"({string.Join(", ", InputFactTypes.Select(f => f.FactName))})"); }