Форматирование вложенных пространств имен в C ++ в одну строку с использованием astyle

В соглашении о кодировании моей компании мы форматируем вложенные пространства имен в одну строку. Например:

namespace Foo { namespace Bar {
...
}} // Foo::Bar

Я пытаюсь применить этот стиль с помощью astyle, но не смог найти ничего в документации на http://astyle.sourceforge.net/astyle.html

Когда я запускаю следующую команду astyle (игнорируйте не относящиеся к делу параметры)

astyle --style=allman --add-brackets --align-reference=name --align-pointer=name --attach-namespaces --pad-header --pad-oper --unpad-paren -n <filename>

Я получаю каждое из вложенных пространств имен в отдельной строке, как показано ниже:

namespace Foo {
namespace Bar {
...
}
}

3

Решение

Попробуйте изменить astyle исходный код. Найти метод ASFormater::isOkToBreakBlock и вставьте в начале:

if (isBraceType(braceType, NAMESPACE_TYPE))
return false;

Убедитесь, что это не нарушает все форматирование.

Постскриптум Надеюсь что astyle Команда услышит и внесет правильные изменения с опцией.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]