Don't use this rule with the default member-ordering rule!
Enforces extended member ordering.
The value for the
order entry should match the following pattern:
< (overridden | protected)- >< (private | public)- >< static- >< late- >< (var | final | const)- >< nullable- >< named- >< factory- > (fields | getters | getters-setters | setters | constructors | methods)
where values in the
<> are optional, values in the
() are interchangeable and the last part of the pattern which represents a class member type is REQUIRED.
Not all of the pattern parts are applicable for every case, for example,
late-constructors are not expected, since they are not supported by the language itself.
Additionally, in order to apply ordering for the Flutter specific widget methods, you can configure the rule with:
For example, the value for
order may be an array consisting of the following strings:
You can simply configure the rule to sort only by a type:
- getters (or just getters-setters if you don't want to separate them)
The default config is:
alphabetize option will enforce that members within the same category should be alphabetically sorted by name.
alphabetize-by-type option will enforce that members within the same category should be alphabetically sorted by theirs type name.
Only one alphabetize option could be applied at the same time.
⚙️ Config example
With the default config:
OR with a custom one:
OR Flutter specific: