This modification addresses a coding style requirement that we have at Mozilla when it comes to he way how code should be written when we are dealing with class inheritance.
- When deriving from a single base, the inherited class should be on the same line as the the inherited class.
class MyClass : public A { ... };
- When deriving from multiple base classes, each base class should be on it's own line, the inheritance operators should also be on the same line as the base class
class MyClass : public X // When deriving from more than one class, put each on its own line. , public Y {
The above rules can be found in our coding style guideline.
This patch adds a special flag: "BreakBeforeInhertianceDelimiter" that by default is false and is only set with true on our coding style.
The corresponding bug for this patch is here.
I must mention that clang-format with this patch has been applied to the entire fx repo from Mozilla and no regression were triggered. You can see the result here.