Reporter |
Image may be NSFW. Clik here to view. ![]() |
---|---|
Created | Jan 27, 2012 3:48:05 PM |
Updated | Jan 27, 2012 3:48:05 PM |
Priority | Normal |
Type | Feature |
Fix versions | No Fix versions |
State | Submitted |
Assignee | Alexey Kuptsov (alexey.kuptsov) |
Subsystem | LINQ Tools |
Affected versions | No Affected versions |
Fixed in build | No Fixed in build |
R# should suggest to convert the constructs like
to
//generic private bool tst1<T>(IEnumerable<T> ienum, Predicate<T> pred ) { bool found = false; foreach (T t in ienum) { found = pred(t); if (found) break; } return found; } //generic private bool tst2<T>(IEnumerable<T> ienum, Func<T, bool> fnPred) { bool found = false; foreach (T t in ienum) { found = fnPred(t); if (found) break; } return found; } //particular private bool tst3(IEnumerable<string> ienum) { bool found = false; foreach (string t in ienum) { found = t.EndsWith("findme"); if (found) break; } return found; } //particular, using equality private bool tst4(IEnumerable<string> ienum) { bool found = false; foreach (string t in ienum) { found = t == "findme2"; if (found) break; } return found; }
to
private bool tst1<T>(IEnumerable<T> ienum, Predicate<T> pred) { return ienum.Any(t => pred(t)); } private bool tst2<T>(IEnumerable<T> ienum, Func<T, bool> fnPred) { return ienum.Any(fnPred); } private bool tst3(IEnumerable<string> ienum) { return ienum.Any(t => t.EndsWith("findme")); } private bool tst4(IEnumerable<string> ienum) { return ienum.Contains("findme2"); }