Comments (1)
I completely understand your request and also I've stumbled upon this to be honest. Applying a case statement with different enum values will indeed quite easily hit the cyclomatic complexity threshold of the LC0010 rule. I'm not on expert on the calculation of the cyclomatic complexity, where I'm unsure if changing the behavior of the rule is the right approach for resolving this.
Ideally we should replace a CASE statement with Enums and Interfaces to achieve extensibility and improve code maintainability.
Cognitive Complexity
In the future maybe we can add Cognitive Complexity to the LinterCop as an alternative: #285. An example of the differences between the both of them:
https://www.sonarsource.com/blog/cognitive-complexity-because-testability-understandability/
from businesscentral.lintercop.
Related Issues (20)
- LC0052 interfaces HOT 8
- BCLinterCop vs AL-GO Experiences HOT 1
- LC0005 ControlAddIn HOT 3
- LC0044 : Unhandled Exception
- LinterCop causes project to never load with Pre-release of AL Language Extension HOT 1
- Not compatible with AL 13.0? HOT 8
- LinterCop for BC24? HOT 10
- Wrong warning LC0035 for Fields with Access Local/Protected HOT 2
- LC0016 - ignores ShowCaption property HOT 5
- Compile with LinterCop after release of AL 13 fails HOT 12
- Wrong Warnings when there are no symbols HOT 2
- LC0016 with SplitButton and Repeater Scope HOT 4
- Rule0052InternalProceduresNotReferencedAnalyzer System.MissingMethodException: Method not found HOT 2
- Rule0044AnalyzeTransferFields - Unable to cast object of type 'Microsoft.Dynamics.Nav.CodeAnalysis.Syntax.PageExtensionSyntax' to type 'Microsoft.Dynamics.Nav.CodeAnalysis.Syntax.TableExtensionSyntax'. HOT 3
- Rule0033AppManifestRuntimeBehind - 'System.MissingMethodException' HOT 3
- Preview AL Language 14 - Unable to load Analyzer assembly HOT 6
- [LC0014] Incorrect warning, even when locked = true is set HOT 2
- LC0044 - Add support for extra transferfields from Base Application HOT 1
- AL Language Extension Version: v14.0.1002061 (pre-release) - Unhandled exception. System.InvalidCastException: Unable to cast object of type 'Microsoft.Dynamics.Nav.CodeAnalysis.Syntax.ParameterListSyntax' to type 'Microsoft.Dynamics.Nav.CodeAnalysis.Syntax.VarSectionSyntax'. HOT 3
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 businesscentral.lintercop.