pretender 0.6.0

Multi-language structural code-quality checks — complexity, duplication, mutation testing, and CI integration
name         = "cpp"
display_name = "C++"
extensions   = [".cpp", ".cc", ".cxx", ".hpp", ".hxx"]
shebangs     = []
tree_sitter  = { source = "builtin:tree-sitter-cpp", rev = "0.23" }
query        = "metrics.scm"

[branches]
"@branch.if"           = { cyclomatic = 1, cognitive = 1 }
"@branch.loop"         = { cyclomatic = 1, cognitive = 1 }
"@branch.case"         = { cyclomatic = 1, cognitive = 1 }
"@branch.catch"        = { cyclomatic = 1, cognitive = 1 }
"@branch.logical.and"  = { cyclomatic = 1, cognitive = 1 }
"@branch.logical.or"   = { cyclomatic = 1, cognitive = 1 }

[assertions]
patterns = [
  "^assert",
  "^ASSERT",
  "^EXPECT",
  "^CHECK",
]

[smell_weights]
"goto"       = 3.0
"const_cast" = 3.0
"reinterpret_cast" = 4.0
"dynamic_cast" = 2.0