dotnetanalyzers / varusageanalyzer Goto Github PK
View Code? Open in Web Editor NEWImplicit Type 'var' Keyword Usage Analyzer
License: MIT License
Implicit Type 'var' Keyword Usage Analyzer
License: MIT License
currently, variable declarations inside foreach loop are not detected. E.g.:
foreach (var item in methodDeclaration.ParameterList.Parameters)
{
}
Not sure how it can be handled for both VB and C#
A few things to keep in mind:
DateTime.Now
is horrible. Give warning when it's used.
Hint: It'll be difficult to know where it's safe to use var! e.g. Action<int> f = (i) => Console.WriteLine(i);
cannot be replaced with var. Nor can "double x = 0;".
For the below case for example, it would be possible to use Stream
instead of FileStream
:
using (FileStream stream = File.Open(@"c:\dev\foo.txt", FileMode.Open))
Cases to cover:
FileStream
is not used inside the code block.Suppress this warning in a new statement because "List<MyStructures.Patient> x = new List<MyStructures.Patient>()" is too repetitive
The method VarDiagnositcAnalyzer.IsLegitVarUsage
has a wrong naming in that a true value means that the usage gets reported, or am I missing something here?
More info is available as a blog post. Also, have a look at AsyncPackage sample inside Roslyn code base
We should suppress the errors when there is explicit casting. E.g.:
var product = (Product)GetProduct();
This should be OK. Even the below one?
var product = GetProduct() as Product;
I think we need to work with GetFixAllProvider
method for this but not sure.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.