{
"id": "complex-function",
"language": "all",
"group": "maintainability",
"listingTitle": "Reduce complexity",
"title": "Reduce complexity",
"mvvm": false,
"defaultSeverity": "warn",
"legacyGroup": "core",
"why": "A function exceeds configured complexity thresholds.",
"suggestion": "Split or simplify the function, or document a local suppression when one cohesive parser or traversal must retain shared state.",
"version": 9,
"semanticMaturity": "token",
"securityKind": "none",
"taxonomy": [
"maintainability"
],
"requirements": [
"functions",
"tokens"
],
"packs": [
"complexity"
],
"implementation": "src/rules/complexity.rs",
"languages": [],
"frameworks": [],
"languageVersions": [],
"limitations": [
"JavaScript and TypeScript extraction covers named declarations, methods, and block-bodied variable arrow functions.",
"Anonymous callbacks and expression-bodied arrow functions are not measured.",
"Cyclomatic complexity counts each logical operator, while cognitive complexity counts a consecutive chain of the same logical operator once."
]
}