ClangFormat语法1.0

AccessModifierOffset(Int类型)

访问修饰符偏移量

AccessModifierOffset: 0

    @public
    NSMutableArray *_cellHeightArray;

AccessModifierOffset: 4

        @public
    NSMutableArray *_cellHeightArray;

AlignEscapedNewlinesLeft (bool)

如果是true就是左对齐,如果是false就是右对齐

true

if (foo && // Some comment
bar) {
    baz();
}

void foo() {
    someFunction();
    someOtherFunction();
}

false

if (foo && // Some Comment
    bar) {
        baz();
}

void foo() {
        someFunction();
  someOtherFunction();
}

AlignTrailingComments (bool)

注释的对齐方式 如果是true将左对齐,如果是false不会对齐

true

// Unrelated comment
void someFunction() {
    doWork();     // Does something
    doMoreWork(); // Does something else
}

false

// Unrelated comment
void someFunction() {
    doWork(); // Does something
    doMoreWork(); // Does something else
}

AllowAllParametersOfDeclarationOnNextLine (bool)

如果TRUE就让参数上下对齐 否则将是默认

true

someFunction(foo,
             bar,
             baz);

false

someFunction(foo, bar, baz);

AllowShortFunctionsOnASingleLine (bool)

是否允许方法单行

true

int f() { return 0; }

false

int f() {
    return 0;
}

AllowShortIfStatementsOnASingleLine (bool)

是否允许if单行

true

void foo() {
    if (!someVar) return;
    if (someOtherVar) return;

    if (doingSomething) {
        // Unrelated
    }
}

false

void foo() {
    if (!someVar) {
        return;
    }
    if (someOtherVar) {
        return;
    }

    if (doingSomething) {
        // Unrelated
    }
}

AllowShortLoopsOnASingleLine (bool)

是否允许循环单行

true

void foo() {
    // Eat some cycles
    int i = 10000;
    while(i>0) i--;
}

false

void foo() {
    // Eat some cycles
    int i = 10000;
    while(i>0) {
        i--;
    }
}

AlwaysBreakBeforeMultilineStrings

在多行字符串之前总是打破

AlwaysBreakBeforeMultilineStrings: true

        NSString *string = @"deqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwde"
                           @"qwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeqwdeq"
                           @"wdeqwdeqw";

AlwaysBreakBeforeMultilineStrings: false

AlwaysBreakTemplateDeclarations (bool)

总是打破模板声明

BinPackParameters (bool)

如果为 false,函数调用或函数定义的参数将会都是在同一行上或者会有一行每个。

BreakBeforeBinaryOperators (bool)

如果为 true,则将换行符后放置二元运算符。

true

bool foo() {
    bool value = someVal
                 + anotherVal
                 + thirdVal
                 == alternateValue
                    * fooVar
                    + barVar
                 && anotherCondition
                    > smallerCondition
                    * powerMultiplier;

    if (someVal
        + anotherVal
        * thirdVal
        == finalVlaue) {
        // ...
    }

    if (someVal) {

    } else if (anotherVal && thirVal
                            > smallerVal)
    {
        // ...
    }

    return foo::bar::baz
           == foo::bar::bop;
}

false

bool foo() {
    bool value = someVal + anotherVal + thirdVal == alternateValue * fooVar + barVar && anotherCondition > smallerCondition * powerMultiplier;

    if (someVal + anotherVal * thirdVal == finalVlaue) {
        // ...
    }

    if (someVal) {

    } else if (anotherVal && thirVal > smallerVal)
    {
        // ...
    }

    return foo::bar::baz == foo::bar::bop;
}

BreakBeforeBraces (BraceBreakingStyle)

大括号打破使用的样式。

可能的值:
BS_Attach (在配置: 附加) 总是将大括号附加到上下文。
BS_Linux (在配置: Linux) 像附加,但是休息前大括号对功能、 命名空间和类定义。
BS_Stroustrup (在配置: Stroustrup) 像附加,但是在函数定义之前休息。
BS_Allman (在配置: 奥尔曼) 总是休息前大括号。
BS_GNU (在配置: GNU) 总是打破前大括号和对大括号内的控制语句,而不是那些的类、 函数或其他定义中添加额外的缩进级别。

BreakBeforeTernaryOperators (bool)

如果为 true,则将换行符后放置三元运算符。

BreakConstructorInitializersBeforeComma (bool)

总是打破在逗号之前的构造函数初始值设定项和对齐以冒号逗号。

ColumnLimit (unsigned)

每一行限制字符的长度

CommentPragmas (std::string)

描述具有特殊的意义,不应分成行或以其他方式改变了评论的正则表达式。

ConstructorInitializerAllOnOneLineOrOnePerLine (bool)

如果在构造函数初始值设定项不适合在一条线,把每个初始值设定项放在自己的行上。



文/君赏(简书作者)
原文链接:http://www.jianshu.com/p/542e535117eb
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值