Comments (5)
Implementation note:
- Contains: already handled by CA1847 => Don't duplicate the case
- IndexOf(string) != IndexOf(char)
- IndexOf(string, Ordinal) == IndexOf(char)
- IndexOf(string, StringComparison) == IndexOf(char, StringComparison)
- Replace(string, string) == Replace(char, char)
- Replace(string, string, Ordinal) == Replace(char, char)
I suggest to change the points related to improvement to warning
This rule suggests performance improvements. The code behave correctly and doesn't need to be changed or reviewed most of the time. So, this is a suggestion.
If performance is important in your project, you can change the diagnostic level using an editorconfig.
from meziantou.analyzer.
There are already multiple rules:
- https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1847?WT.mc_id=DT-MVP-5003978
- https://github.com/meziantou/Meziantou.Analyzer/blob/main/docs/Rules/MA0089.md
Some calls may be missing from MA0089. Could you check MA0089 and CA1847 and list what optimizations are missing?
from meziantou.analyzer.
I checked. This roll of yours works correctly. But because the default is suggestion. I didn't notice. But does this roll also work for Contains or not? And why didn't you add the roll as a warning?
from meziantou.analyzer.
But because the default is suggestion. I didn't notice
Most performance rules are suggestion
But does this roll also work for Contains or not
The rule only considers StartsWith
and EndsWith
. We can add more methods if needed. Let's start a list:
string.Contains
Feel free to continue this list 🙂
from meziantou.analyzer.
*indexof
*replace
With these 2 items. There are 3 items in total.
I suggest to change the points related to improvement to warning
from meziantou.analyzer.
Related Issues (20)
- Analyze usage of CultureInfo ctor HOT 1
- MA0011: false positives reported
- Support member exclusion filters for rules
- [Question]: Is there any way to enable all rules in this package? HOT 2
- MA0143 - False Positive is Dispose Method HOT 3
- MA0142 & MA0141 and Linq
- MA0134 - false positive in Expression<Func<Task>>
- Blacklist for LoggerParameters (Placeholders) HOT 4
- Remove rules with a Roslyn Equivalent HOT 2
- Most of the Blazor rules do not work against App on .net 8.0 HOT 7
- MA0010 - Should be deprecated in favor of CA1018 HOT 1
- MA0047 - Should be deprecated in favor of CA1050 HOT 4
- Rule for consistent formatting of comments HOT 1
- `MA0138` does not account for `IAsyncEnumerable<T>` HOT 3
- Do not warn `MA0155` for methods which get subscribed to an event HOT 1
- [MA0151] False warning when use `typeof` keyword HOT 1
- Rule MA0115 - Unknown component parameter not working for third part packages HOT 8
- MA0029 flagging incorrectly.
- MA0003 docs error: should be minimum_method_parameters not minimum_method_arguments
- MA0158 docs error HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meziantou.analyzer.