This is an automated email from the ASF dual-hosted git repository.

nightowl888 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucenenet.git

commit 4eeb1aee26e8c93d0eb72e84a4b0c6cb7222c6a8
Author: Shad Storhaug <[email protected]>
AuthorDate: Wed Dec 4 03:36:38 2019 +0700

    Lucene.Net.Support.SetExtensions: Factored out AddAll in favor of 
UnionWith, PutAll, or AddRange depending on the collection type
---
 src/Lucene.Net.Facet/DrillDownQuery.cs             |  9 ++--
 .../PostingsHighlight/MultiTermHighlighting.cs     | 51 ++++++++++------------
 .../VectorHighlight/BaseFragmentsBuilder.cs        |  2 +-
 .../VectorHighlight/FieldPhraseList.cs             |  4 +-
 src/Lucene.Net.Queries/CommonTermsQuery.cs         |  2 +-
 src/Lucene.Net.Suggest/Spell/DirectSpellChecker.cs |  4 +-
 .../Index/ThreadedIndexingAndSearchingTestCase.cs  |  6 +--
 .../JavaCompatibility/SystemTypesHelpers.cs        |  2 +-
 .../Util/TestRuleSetupAndRestoreClassEnv.cs        |  2 +-
 .../Analysis/Util/TestCharArraySet.cs              | 12 ++---
 src/Lucene.Net.Tests.Join/TestJoinUtil.cs          |  2 +-
 src/Lucene.Net.Tests/Index/TestNeverDelete.cs      |  2 +-
 src/Lucene.Net.Tests/Index/TestPrefixCodedTerms.cs |  2 +-
 src/Lucene.Net/Support/SetExtensions.cs            |  9 ----
 14 files changed, 47 insertions(+), 62 deletions(-)

diff --git a/src/Lucene.Net.Facet/DrillDownQuery.cs 
b/src/Lucene.Net.Facet/DrillDownQuery.cs
index c300c88..27a8cd2 100644
--- a/src/Lucene.Net.Facet/DrillDownQuery.cs
+++ b/src/Lucene.Net.Facet/DrillDownQuery.cs
@@ -69,7 +69,7 @@ namespace Lucene.Net.Facet
         internal DrillDownQuery(FacetsConfig config, BooleanQuery query, 
IDictionary<string, int?> drillDownDims)
         {
             this.query = (BooleanQuery)query.Clone();
-            this.drillDownDims.AddAll(drillDownDims);
+            this.drillDownDims.PutAll(drillDownDims);
             this.config = config;
         }
 
@@ -86,7 +86,7 @@ namespace Lucene.Net.Facet
                 throw new System.ArgumentException("cannot apply filter unless 
baseQuery isn't null; pass ConstantScoreQuery instead");
             }
             Debug.Assert(clauses.Length == 1 + other.drillDownDims.Count, 
clauses.Length + " vs " + (1 + other.drillDownDims.Count));
-            drillDownDims.AddAll(other.drillDownDims);
+            drillDownDims.PutAll(other.drillDownDims);
             query.Add(new FilteredQuery(clauses[0].Query, filter), Occur.MUST);
             for (int i = 1; i < clauses.Length; i++)
             {
@@ -109,7 +109,7 @@ namespace Lucene.Net.Facet
             {
                 query.Add(clause, Occur.MUST);
             }
-            this.drillDownDims.AddAll(drillDownDims);
+            this.drillDownDims.PutAll(drillDownDims);
             this.config = config;
         }
 
@@ -147,8 +147,7 @@ namespace Lucene.Net.Facet
         private void Merge(string dim, string[] path)
         {
             int index = 0;
-            int? idx;
-            if (drillDownDims.TryGetValue(dim, out idx) && idx.HasValue)
+            if (drillDownDims.TryGetValue(dim, out int? idx) && idx.HasValue)
             {
                 index = idx.Value;
             }
diff --git 
a/src/Lucene.Net.Highlighter/PostingsHighlight/MultiTermHighlighting.cs 
b/src/Lucene.Net.Highlighter/PostingsHighlight/MultiTermHighlighting.cs
index 4d0c46a..ea7eed9 100644
--- a/src/Lucene.Net.Highlighter/PostingsHighlight/MultiTermHighlighting.cs
+++ b/src/Lucene.Net.Highlighter/PostingsHighlight/MultiTermHighlighting.cs
@@ -41,72 +41,68 @@ namespace Lucene.Net.Search.PostingsHighlight
         internal static CharacterRunAutomaton[] ExtractAutomata(Query query, 
string field)
         {
             List<CharacterRunAutomaton> list = new 
List<CharacterRunAutomaton>();
-            if (query is BooleanQuery)
+            if (query is BooleanQuery booleanQuery)
             {
-                BooleanClause[] clauses = ((BooleanQuery)query).GetClauses();
-                foreach (BooleanClause clause in clauses)
+                foreach (BooleanClause clause in booleanQuery.GetClauses())
                 {
                     if (!clause.IsProhibited)
                     {
-                        
list.AddAll(Arrays.AsList(ExtractAutomata(clause.Query, field)));
+                        list.AddRange(ExtractAutomata(clause.Query, field));
                     }
                 }
             }
-            else if (query is DisjunctionMaxQuery)
+            else if (query is DisjunctionMaxQuery disjunctionMaxQuery)
             {
-                foreach (Query sub in ((DisjunctionMaxQuery)query).Disjuncts)
+                foreach (Query sub in disjunctionMaxQuery.Disjuncts)
                 {
-                    list.AddAll(Arrays.AsList(ExtractAutomata(sub, field)));
+                    list.AddRange(ExtractAutomata(sub, field));
                 }
             }
-            else if (query is SpanOrQuery)
+            else if (query is SpanOrQuery spanOrQuery)
             {
-                foreach (Query sub in ((SpanOrQuery)query).GetClauses())
+                foreach (Query sub in spanOrQuery.GetClauses())
                 {
-                    list.AddAll(Arrays.AsList(ExtractAutomata(sub, field)));
+                    list.AddRange(ExtractAutomata(sub, field));
                 }
             }
-            else if (query is SpanNearQuery)
+            else if (query is SpanNearQuery spanNearQuery)
             {
-                foreach (Query sub in ((SpanNearQuery)query).GetClauses())
+                foreach (Query sub in spanNearQuery.GetClauses())
                 {
-                    list.AddAll(Arrays.AsList(ExtractAutomata(sub, field)));
+                    list.AddRange(ExtractAutomata(sub, field));
                 }
             }
-            else if (query is SpanNotQuery)
+            else if (query is SpanNotQuery spanNotQuery)
             {
-                
list.AddAll(Arrays.AsList(ExtractAutomata(((SpanNotQuery)query).Include, 
field)));
+                list.AddRange(ExtractAutomata(spanNotQuery.Include, field));
             }
-            else if (query is SpanPositionCheckQuery)
+            else if (query is SpanPositionCheckQuery spanPositionCheckQuery)
             {
-                
list.AddAll(Arrays.AsList(ExtractAutomata(((SpanPositionCheckQuery)query).Match,
 field)));
+                list.AddRange(ExtractAutomata(spanPositionCheckQuery.Match, 
field));
             }
-            else if (query is ISpanMultiTermQueryWrapper)
+            else if (query is ISpanMultiTermQueryWrapper 
spanMultiTermQueryWrapper)
             {
-                
list.AddAll(Arrays.AsList(ExtractAutomata(((ISpanMultiTermQueryWrapper)query).WrappedQuery,
 field)));
+                
list.AddRange(ExtractAutomata(spanMultiTermQueryWrapper.WrappedQuery, field));
             }
-            else if (query is AutomatonQuery)
+            else if (query is AutomatonQuery aq)
             {
-                AutomatonQuery aq = (AutomatonQuery)query;
                 if (aq.Field.Equals(field, StringComparison.Ordinal))
                 {
                     list.Add(new 
CharacterRunAutomatonToStringAnonymousHelper(aq.Automaton, () => 
aq.ToString()));
                 }
             }
-            else if (query is PrefixQuery)
+            else if (query is PrefixQuery pq)
             {
-                PrefixQuery pq = (PrefixQuery)query;
                 Term prefix = pq.Prefix;
                 if (prefix.Field.Equals(field, StringComparison.Ordinal))
                 {
                     list.Add(new CharacterRunAutomatonToStringAnonymousHelper(
-                        
BasicOperations.Concatenate(BasicAutomata.MakeString(prefix.Text()), 
BasicAutomata.MakeAnyString()), 
+                        
BasicOperations.Concatenate(BasicAutomata.MakeString(prefix.Text()), 
BasicAutomata.MakeAnyString()),
                         () => pq.ToString()));
                 }
             }
-            else if (query is FuzzyQuery)
+            else if (query is FuzzyQuery fq)
             {
-                FuzzyQuery fq = (FuzzyQuery)query;
                 if (fq.Field.Equals(field, StringComparison.Ordinal))
                 {
                     string utf16 = fq.Term.Text();
@@ -128,9 +124,8 @@ namespace Lucene.Net.Search.PostingsHighlight
                     list.Add(new 
CharacterRunAutomatonToStringAnonymousHelper(automaton, () => fq.ToString()));
                 }
             }
-            else if (query is TermRangeQuery)
+            else if (query is TermRangeQuery tq)
             {
-                TermRangeQuery tq = (TermRangeQuery)query;
                 if (tq.Field.Equals(field, StringComparison.Ordinal))
                 {
                     // this is *not* an automaton, but its very simple
diff --git a/src/Lucene.Net.Highlighter/VectorHighlight/BaseFragmentsBuilder.cs 
b/src/Lucene.Net.Highlighter/VectorHighlight/BaseFragmentsBuilder.cs
index 29adb50..e56f389 100644
--- a/src/Lucene.Net.Highlighter/VectorHighlight/BaseFragmentsBuilder.cs
+++ b/src/Lucene.Net.Highlighter/VectorHighlight/BaseFragmentsBuilder.cs
@@ -348,7 +348,7 @@ namespace Lucene.Net.Search.VectorHighlight
             List<WeightedFragInfo> result = new List<WeightedFragInfo>();
             foreach (List<WeightedFragInfo> weightedFragInfos in 
fieldNameToFragInfos.Values)
             {
-                result.AddAll(weightedFragInfos);
+                result.AddRange(weightedFragInfos);
             }
             CollectionUtil.TimSort(result, new 
DiscreteMultiValueHighlightingComparerAnonymousHelper());
 
diff --git a/src/Lucene.Net.Highlighter/VectorHighlight/FieldPhraseList.cs 
b/src/Lucene.Net.Highlighter/VectorHighlight/FieldPhraseList.cs
index 93a2e3a..f7818b1 100644
--- a/src/Lucene.Net.Highlighter/VectorHighlight/FieldPhraseList.cs
+++ b/src/Lucene.Net.Highlighter/VectorHighlight/FieldPhraseList.cs
@@ -220,7 +220,7 @@ namespace Lucene.Net.Search.VectorHighlight
                 {
                     // WeightedPhraseInfo.addIfNoOverlap() dumps the second 
part of, for example, hyphenated words (social-economics). 
                     // The result is that all informations in TermInfo are 
lost and not available for further operations. 
-                    existWpi.TermsInfos.AddAll(wpi.TermsInfos);
+                    existWpi.TermsInfos.AddRange(wpi.TermsInfos);
                     return;
                 }
             }
@@ -343,7 +343,7 @@ namespace Lucene.Net.Search.VectorHighlight
                         {
                             WeightedPhraseInfo info = toMergeItr.Current;
                             boost += info.boost;
-                            termsInfos.AddAll(info.termsInfos);
+                            termsInfos.AddRange(info.termsInfos);
                             allToffs[index++] = 
info.termsOffsets.GetEnumerator();
                         }
 
diff --git a/src/Lucene.Net.Queries/CommonTermsQuery.cs 
b/src/Lucene.Net.Queries/CommonTermsQuery.cs
index 701dbd6..6b5e070 100644
--- a/src/Lucene.Net.Queries/CommonTermsQuery.cs
+++ b/src/Lucene.Net.Queries/CommonTermsQuery.cs
@@ -356,7 +356,7 @@ namespace Lucene.Net.Queries
 
         public override void ExtractTerms(ISet<Term> terms)
         {
-            terms.AddAll(this.m_terms);
+            terms.UnionWith(this.m_terms);
         }
 
         public override string ToString(string field)
diff --git a/src/Lucene.Net.Suggest/Spell/DirectSpellChecker.cs 
b/src/Lucene.Net.Suggest/Spell/DirectSpellChecker.cs
index 0ade7dc..910c1ad 100644
--- a/src/Lucene.Net.Suggest/Spell/DirectSpellChecker.cs
+++ b/src/Lucene.Net.Suggest/Spell/DirectSpellChecker.cs
@@ -428,8 +428,8 @@ namespace Lucene.Net.Search.Spell
             if (maxEdits > 1 && terms.Count() < inspections)
             {
                 var moreTerms = new HashSet<ScoreTerm>();
-                moreTerms.AddAll(terms);
-                moreTerms.AddAll(SuggestSimilar(term, inspections, ir, 
docfreq, maxEdits, accuracy, spare));
+                moreTerms.UnionWith(terms);
+                moreTerms.UnionWith(SuggestSimilar(term, inspections, ir, 
docfreq, maxEdits, accuracy, spare));
                 terms = moreTerms;
             }
 
diff --git 
a/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs 
b/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
index 649de0d..95aaafb 100644
--- a/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
@@ -276,7 +276,7 @@ namespace Lucene.Net.Index
                                 if (delSubDocs != null)
                                 {
                                     delSubDocs.Deleted = true;
-                                    delIDs.AddAll(delSubDocs.SubIDs);
+                                    delIDs.UnionWith(delSubDocs.SubIDs);
                                     
outerInstance.m_delCount.AddAndGet(delSubDocs.SubIDs.Count);
                                     if (VERBOSE)
                                     {
@@ -366,7 +366,7 @@ namespace Lucene.Net.Index
                             {
                                 Console.WriteLine(Thread.CurrentThread.Name + 
": tot " + count + " deletes");
                             }
-                            delIDs.AddAll(toDeleteIDs);
+                            delIDs.UnionWith(toDeleteIDs);
                             toDeleteIDs.Clear();
 
                             foreach (SubDocs subDocs in toDeleteSubDocs)
@@ -379,7 +379,7 @@ namespace Lucene.Net.Index
                                 {
                                     
Console.WriteLine(Thread.CurrentThread.Name + ": del subs: " + subDocs.SubIDs + 
" packID=" + subDocs.PackID);
                                 }
-                                delIDs.AddAll(subDocs.SubIDs);
+                                delIDs.UnionWith(subDocs.SubIDs);
                                 
outerInstance.m_delCount.AddAndGet(subDocs.SubIDs.Count);
                             }
                             toDeleteSubDocs.Clear();
diff --git 
a/src/Lucene.Net.TestFramework/Support/JavaCompatibility/SystemTypesHelpers.cs 
b/src/Lucene.Net.TestFramework/Support/JavaCompatibility/SystemTypesHelpers.cs
index da17171..1d3e561 100644
--- 
a/src/Lucene.Net.TestFramework/Support/JavaCompatibility/SystemTypesHelpers.cs
+++ 
b/src/Lucene.Net.TestFramework/Support/JavaCompatibility/SystemTypesHelpers.cs
@@ -231,7 +231,7 @@ namespace Lucene.Net
 
         public static void addAll<T>(this ISet<T> s, IEnumerable<T> other)
         {
-            s.AddAll(other);
+            s.UnionWith(other);
         }
 
         public static bool contains<T>(this ISet<T> s, T item)
diff --git 
a/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs 
b/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs
index 68ef766..cd0695a 100644
--- a/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs
+++ b/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs
@@ -163,7 +163,7 @@ namespace Lucene.Net.Util
             var suppressCodecsAttribute = 
targetClass.GetTypeInfo().GetCustomAttribute<LuceneTestCase.SuppressCodecsAttribute>();
             if (suppressCodecsAttribute != null)
             {
-                avoidCodecs.AddAll(suppressCodecsAttribute.Value);
+                avoidCodecs.UnionWith(suppressCodecsAttribute.Value);
             }
 
             // set back to default
diff --git 
a/src/Lucene.Net.Tests.Analysis.Common/Analysis/Util/TestCharArraySet.cs 
b/src/Lucene.Net.Tests.Analysis.Common/Analysis/Util/TestCharArraySet.cs
index df04154..428f9c4 100644
--- a/src/Lucene.Net.Tests.Analysis.Common/Analysis/Util/TestCharArraySet.cs
+++ b/src/Lucene.Net.Tests.Analysis.Common/Analysis/Util/TestCharArraySet.cs
@@ -54,7 +54,7 @@ namespace Lucene.Net.Analysis.Util
             string[] words = new string[] { "Hello", "World", "this", "is", 
"a", "test" };
             char[] findme = "xthisy".ToCharArray();
             CharArraySet set = new CharArraySet(TEST_VERSION_CURRENT, 10, 
true);
-            set.AddAll(words);
+            set.UnionWith(words);
             assertTrue(set.Contains(findme, 1, 4));
             assertTrue(set.Contains(new string(findme, 1, 4)));
 
@@ -86,7 +86,7 @@ namespace Lucene.Net.Analysis.Util
         public virtual void TestClear()
         {
             var set = new CharArraySet(TEST_VERSION_CURRENT, 10, true);
-            set.AddAll(TEST_STOP_WORDS);
+            set.UnionWith(TEST_STOP_WORDS);
             assertEquals("Not all words added", TEST_STOP_WORDS.Length, 
set.size());
             set.Clear();
             assertEquals("not empty", 0, set.size());
@@ -94,7 +94,7 @@ namespace Lucene.Net.Analysis.Util
             {
                 assertFalse(set.Contains(TEST_STOP_WORDS[i]));
             }
-            set.AddAll(TEST_STOP_WORDS);
+            set.UnionWith(TEST_STOP_WORDS);
             assertEquals("Not all words added", TEST_STOP_WORDS.Length, 
set.size());
             for (var i = 0; i < TEST_STOP_WORDS.Length; i++)
             {
@@ -106,7 +106,7 @@ namespace Lucene.Net.Analysis.Util
         public virtual void TestModifyOnUnmodifiable()
         {
             CharArraySet set = new CharArraySet(TEST_VERSION_CURRENT, 10, 
true);
-            set.AddAll(TEST_STOP_WORDS);
+            set.UnionWith(TEST_STOP_WORDS);
             int size = set.size();
             set = CharArraySet.UnmodifiableSet(set);
             assertEquals("Set size changed due to unmodifiableSet call", size, 
set.size());
@@ -249,7 +249,7 @@ namespace Lucene.Net.Analysis.Util
         public virtual void TestUnmodifiableSet()
         {
             var set = new CharArraySet(TEST_VERSION_CURRENT, 10, true);
-            set.AddAll(TEST_STOP_WORDS);
+            set.UnionWith(TEST_STOP_WORDS);
             set.Add(Convert.ToInt32(1));
             int size = set.size();
             set = CharArraySet.UnmodifiableSet(set);
@@ -662,7 +662,7 @@ namespace Lucene.Net.Analysis.Util
 
             values = new List<string> { "sally", "seashells", "by", "the", 
"sea", "shore" };
             charArraySet.Clear();
-            charArraySet.AddAll(values);
+            charArraySet.UnionWith(values);
 
             
assertFalse(charArraySet.GetHashCode().Equals(charArraySetCopy.GetHashCode()));
             assertFalse(charArraySet.Equals(charArraySetCopy));
diff --git a/src/Lucene.Net.Tests.Join/TestJoinUtil.cs 
b/src/Lucene.Net.Tests.Join/TestJoinUtil.cs
index d6916bb..76d7940 100644
--- a/src/Lucene.Net.Tests.Join/TestJoinUtil.cs
+++ b/src/Lucene.Net.Tests.Join/TestJoinUtil.cs
@@ -715,7 +715,7 @@ namespace Lucene.Net.Tests.Join
                             TermsEnum termsEnum = null;
                             SortedSet<BytesRef> joinValues =
                                 new 
SortedSet<BytesRef>(BytesRef.UTF8SortedAsUnicodeComparer);
-                            joinValues.AddAll(joinValueToJoinScores.Keys);
+                            joinValues.UnionWith(joinValueToJoinScores.Keys);
                             foreach (BytesRef joinValue in joinValues)
                             {
                                 termsEnum = terms.GetIterator(termsEnum);
diff --git a/src/Lucene.Net.Tests/Index/TestNeverDelete.cs 
b/src/Lucene.Net.Tests/Index/TestNeverDelete.cs
index 67e1655..1ae2b97 100644
--- a/src/Lucene.Net.Tests/Index/TestNeverDelete.cs
+++ b/src/Lucene.Net.Tests/Index/TestNeverDelete.cs
@@ -78,7 +78,7 @@ namespace Lucene.Net.Index
                 {
                     Console.WriteLine("TEST: check files: " + ic.FileNames);
                 }
-                allFiles.AddAll(ic.FileNames);
+                allFiles.UnionWith(ic.FileNames);
                 // Make sure no old files were removed
                 foreach (string fileName in allFiles)
                 {
diff --git a/src/Lucene.Net.Tests/Index/TestPrefixCodedTerms.cs 
b/src/Lucene.Net.Tests/Index/TestPrefixCodedTerms.cs
index f403ed7..18aa0b5 100644
--- a/src/Lucene.Net.Tests/Index/TestPrefixCodedTerms.cs
+++ b/src/Lucene.Net.Tests/Index/TestPrefixCodedTerms.cs
@@ -113,7 +113,7 @@ namespace Lucene.Net.Index
                     Term term = new Term(TestUtil.RandomUnicodeString(Random, 
2), TestUtil.RandomUnicodeString(Random, 4));
                     terms.Add(term);
                 }
-                superSet.AddAll(terms);
+                superSet.UnionWith(terms);
 
                 PrefixCodedTerms.Builder b = new PrefixCodedTerms.Builder();
                 foreach (Term @ref in terms)
diff --git a/src/Lucene.Net/Support/SetExtensions.cs 
b/src/Lucene.Net/Support/SetExtensions.cs
index 5e2f3c6..50e9d31 100644
--- a/src/Lucene.Net/Support/SetExtensions.cs
+++ b/src/Lucene.Net/Support/SetExtensions.cs
@@ -30,14 +30,5 @@ namespace Lucene.Net.Support
                 theSet.Remove(elt);
             }
         }
-
-        [DebuggerStepThrough]
-        public static void AddAll<T>(this ICollection<T> set, IEnumerable<T> 
itemsToAdd)
-        {
-            foreach (var item in itemsToAdd)
-            {
-                set.Add(item);
-            }
-        }
     }
 }
\ No newline at end of file

Reply via email to