pi-lens
Version:
Real-time code feedback for pi — LSP, linters, formatters, type-checking, structural analysis & booboo
55 lines (43 loc) • 1.2 kB
YAML
id: name-capitalization-conflict
name: Methods and Field Names Should Not Differ Only By Capitalization
severity: error
category: maintainability
defect_class: correctness
inline_tier: blocking
language: java
message: "'{{NAME}}' differs only by capitalization from existing field/method"
description: |
Names differing only by case (value vs Value) are confusing
and violate Java naming conventions. Use distinct names.
✅ FIX: Use more descriptive distinct names
```java
private int count; // field
public int getCount() { } // method - distinct
```
query: |
(class_body
(field_declaration
(variable_declarator
name: (identifier) @FIELD) @FDECL)
(method_declaration
name: (identifier) @METHOD) @MDECL)
metavars:
- FIELD
- FDECL
- METHOD
- MDECL
post_filter: differs_only_by_case
tags:
- maintainability
- java
- confusing
examples:
bad: |
private int value;
public int Value() { } // BAD - differs by case
good: |
private int value;
public int getValue() { } // GOOD - distinct names
has_fix: false