Page MenuHomePhabricator

Make very minor generality improvements to the scope selector
ClosedPublic

Authored by epriestley on Apr 25 2019, 10:31 PM.
Tags
None
Referenced Files
F18062960: D20479.id48851.diff
Mon, Aug 4, 12:54 PM
F17821823: D20479.id48861.diff
Jul 26 2025, 3:13 AM
F17821821: D20479.id48851.diff
Jul 26 2025, 3:13 AM
F17821820: D20479.id.diff
Jul 26 2025, 3:13 AM
F17821228: D20479.diff
Jul 26 2025, 2:41 AM
F17758121: D20479.diff
Jul 22 2025, 4:52 PM
F17732124: D20479.id.diff
Jul 20 2025, 3:54 AM
F17713313: D20479.id.diff
Jul 17 2025, 1:16 PM
Subscribers
None

Details

Reviewers
amckinley
Summary

See PHI985. I think we pretty much need to start applying language-specific rules, but we can apply at least one more relatively language-agnostic rule: don't match lines which are indented 3+ levels.

In C++, we may have symbols like this:

class X {
  public:
    int m() { ... }
}

..but I believe no mainstream language puts symbol definitions 3+ levels deep.

Also clean up some of the tab handling very slightly.

Test Plan

Tests pass, looked at some C++ code and got slightly better (but still not great) matches.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable