private IEnumerable <DependencyRule> CreateDependencyRules([CanBeNull] ItemType usingItemTypeHint, [CanBeNull] ItemType usedItemTypeHint, [NotNull] string ruleSourceName, int lineNo, [NotNull] string usingPattern, [NotNull] string dependencyPattern, [NotNull] string usedPattern, [NotNull] string leftRepresentationPart, [NotNull] string rightRepresentationPart, bool questionableRule, bool ignoreCase) { string trimmedUsingPattern = usingPattern.Trim(); string trimmedDependencyPattern = dependencyPattern.Trim(); string trimmedUsedPattern = usedPattern.Trim(); string repString = trimmedUsingPattern + " " + leftRepresentationPart + trimmedDependencyPattern + rightRepresentationPart + trimmedUsedPattern; DependencyRuleSource rep = new DependencyRuleSource(ruleSourceName, lineNo, repString, questionableRule, trimmedUsingPattern); var match = new DependencyMatch(usingItemTypeHint, trimmedUsingPattern, trimmedDependencyPattern, usedItemTypeHint, trimmedUsedPattern, ignoreCase); var head = new DependencyRule(match, rep); var result = new List <DependencyRule> { head }; if (Log.IsVerboseEnabled) { Log.WriteInfo($"Matchers used for checking {repString} ({ruleSourceName}:{lineNo})"); // TODO: Put into DependencyMatch constructor ////Log.WriteInfo(" Using: " + string.Join<IMatcher>(", ", head.Using.Matchers)); ////Log.WriteInfo(" Used: " + string.Join<IMatcher>(", ", head.Used.Matchers)); } return(result); }
public DependencyRule([NotNull] DependencyMatch match, [NotNull] DependencyRuleSource source) { _match = match; Source = source; }