public bool IsFitByСonstraintOrDontHasСonstraint(ReasonOfFuzzyLogicResolving reason) { if (Constraint == null) { return(true); } if (Constraint.IsEmpty) { return(true); } return(Constraint.isFit(reason)); }
public bool IsFitByСonstraint(ReasonOfFuzzyLogicResolving reason) { if (Constraint == null) { if (reason == null) { return(true); } if (reason.Kind == KindOfReasonOfFuzzyLogicResolving.Unknown) { return(true); } return(false); } return(Constraint.isFit(reason)); }
public bool isFit(ReasonOfFuzzyLogicResolving reason) { if ((reason == null || reason.Kind == KindOfReasonOfFuzzyLogicResolving.Unknown) && _items.IsNullOrEmpty()) { return(true); } var kindOfReson = reason.Kind; switch (kindOfReson) { case KindOfReasonOfFuzzyLogicResolving.Inheritance: return(_items.Any(p => p.Kind == KindOfLinguisticVariableConstraintItem.Inheritance)); case KindOfReasonOfFuzzyLogicResolving.Relation: return(_items.Any(p => p.Kind == KindOfLinguisticVariableConstraintItem.Relation && p.RelationName == reason.RelationName)); default: throw new ArgumentOutOfRangeException(nameof(kindOfReson), kindOfReson, null); } }