solid-software / solid_lints

🟧 Lints for Dart and Flutter based on software industry standards and best practices.
Other
36 stars 17 forks source link

New rule: consider_making_a_member_private (if its not used outside) #93

Open danylo-safonov-solid opened 7 months ago

danylo-safonov-solid commented 7 months ago

This'll help with dead_code

BAD:

class X {
  // only used internally 
  void x() {
    ...
  }
}

GOOD:

class X {
  // only used internally 
  void _x() {
    ...
  }
}
kvenn commented 2 months ago

I'm very excited for this one! I could see it being very valuable for any class members. For some reason, Dart doesn't recognize that a member is unused unless it's private. So this would be a double whammy if it enforced all members that could be public were public.

gbassisp commented 3 weeks ago

Should this only be applied to class members? What about top-level ones and class definitions themselves? I think it would be worth having it to all definitions, because top-level functions that are only used internally also add noise to code completion. As a bonus, it could help us identify unused definitions (something that I used to do with dart code metrics).