public Dependency CreateDependency([NotNull] Item usingItem, [NotNull] Item usedItem, [CanBeNull] ISourceLocation source, [CanBeNull] IMarkerSet markers, int ct, int questionableCt = 0, int badCt = 0, string notOkReason = null, [CanBeNull] string exampleInfo = null) { return(new Dependency(usingItem, usedItem, source, markers: markers, ct: ct, questionableCt: questionableCt, badCt: badCt, notOkReason: notOkReason, exampleInfo: exampleInfo)); }
public Dependency CreateDependency([NotNull] Item usingItem, [NotNull] Item usedItem, [CanBeNull] ISourceLocation source, [CanBeNull] IMarkerSet markers, int ct, int questionableCt = 0, int badCt = 0, [CanBeNull] string notOkReason = null, [CanBeNull] string exampleInfo = null) { return((_itemAndDependencyFactories ?? _globalItemAndDependencyFactories).CreateDependency(usingItem, usedItem, source, markers, ct, questionableCt, badCt, notOkReason, exampleInfo)); }
public void MergeWithMarkers([CanBeNull] IMarkerSet markerSet) { if (markerSet != null) { MergeWithMarkers(((AbstractMarkerSet)markerSet).Markers); } }
/// <summary> /// Create a dependency. /// </summary> /// <param name="usingItem">The using item.</param> /// <param name="usedItem">The used item.</param> /// <param name="source">Name of the file.</param> /// <param name="markers"></param> /// <param name="ct"></param> /// <param name="questionableCt"></param> /// <param name="badCt"></param> /// <param name="notOkReason"></param> /// <param name="exampleInfo"></param> /// <param name="ignoreCaseDefault"></param> internal Dependency([NotNull] Item usingItem, [NotNull] Item usedItem, [CanBeNull] ISourceLocation source, [CanBeNull] IMarkerSet markers, int ct, int questionableCt = 0, int badCt = 0, string notOkReason = null, [CanBeNull] string exampleInfo = null, bool?ignoreCaseDefault = null) : base(usingItem, usedItem, source) { if (usingItem == null) { throw new ArgumentNullException(nameof(usingItem)); } if (usedItem == null) { throw new ArgumentNullException(nameof(usedItem)); } _ct = ct; _questionableCt = questionableCt; _badCt = badCt; _exampleInfo = exampleInfo; bool ignoreCase = ignoreCaseDefault ?? usingItem.Type.IgnoreCase | usedItem.Type.IgnoreCase; _markerSet = new MutableMarkerSet(ignoreCase, markers); // Make sure that "no reason" is null so that ?? works. _notOkReason = string.IsNullOrWhiteSpace(notOkReason) ? null : notOkReason; CheckNotOkReason(); }
public ReadOnlyDependency(ReadOnlyItem usingItem, ReadOnlyItem usedItem, ISourceLocation source, IMarkerSet markerSet, int ct, int questionableCt, int badCt, string notOkReason, string exampleInfo) : base(usingItem, usedItem, source) { MarkerSet = markerSet; Ct = ct; QuestionableCt = questionableCt; BadCt = badCt; NotOkReason = notOkReason; ExampleInfo = exampleInfo; }
private static void MarkItem(bool clear, Item item, IMarkerSet markersToAdd, List <string> markerPatternsToRemove, bool ignoreCase) { if (clear) { item.ClearMarkers(); } else { item.MergeWithMarkers(markersToAdd); item.RemoveMarkers(markerPatternsToRemove, ignoreCase); } }
public void MergeWithMarkers(IMarkerSet markers) { _markerSet.MergeWithMarkers(markers); MarkersHaveChanged(); }
public Dependency CreateDependency(Item usingItem, Item usedItem, ISourceLocation source, IMarkerSet markers, int ct, int questionableCt = 0, int badCt = 0, string notOkReason = null, string exampleInfo = null) { foreach (var f in _factories) { Dependency result = f.CreateDependency(usingItem, usedItem, source, markers, ct, questionableCt, badCt, notOkReason, exampleInfo); if (result != null) { return(result); } } throw new InvalidOperationException("Internal error - this cannot happen, as the last factory has to create an item"); }
public MutableMarkerSet(bool ignoreCase, [CanBeNull] IMarkerSet markersOrNull) : base(ignoreCase) { _markersOrNull = CreateMarkerSetWithClonedDictionary(ignoreCase, markersOrNull == null ? Empty(ignoreCase) : ((AbstractMarkerSet)markersOrNull).Markers); }
public bool IsMatch(IMarkerSet obj) { return(obj.IsMatch(_evals)); }
public Dependency CreateDependency(Item usingItem, Item usedItem, ISourceLocation source, IMarkerSet markers, int ct, int questionableCt = 0, int badCt = 0, string notOkReason = null, string exampleInfo = null) { return(null); // We use standard dependencies between items }