2016-01-27 13 views
5

Tôi muốn biết liệu định dạng clang có thể được thiết lập để giảm không compound_statement thành { non-compound_statement; } trong iteration_statement.định dạng clang thêm {} xung quanh câu lệnh sau if if() while() cho()

statement 
: labeled_statement 
| compound_statement 
| expression_statement 
| selection_statement 
| iteration_statement 
| jump_statement 
; 
iteration_statement 
: WHILE '(' expression ')' statement 
| DO statement WHILE '(' expression ')' ';' 
| FOR '(' expression_statement expression_statement ')' statement 
| FOR '(' expression_statement expression_statement expression ')' statement 
; 

Ví dụ

Input:

if (exp) foo = 1; 

Output:

if (exp) { foo = 1; } 

Sau đó beautifier sẽ thụt khi cần thiết.

+0

định dạng clang có thể không phải là những gì bạn đang tìm kiếm. Bạn đã thử sử dụng 'clang-tidy' chưa? – PythonJin

Trả lời

1

Những gì bạn muốn làm là ngoài phạm vi những gì Clang định dạng cố gắng để đạt được:

  • Các yếu tố từ vựng chỉ kêu vang-format nên chạm vào là: khoảng trắng, chuỗi literals và ý kiến. Bất kỳ thay đổi nào khác khác nhau, từ thứ tự bao gồm để loại bỏ dấu ngoặc thừa thừa không nằm trong phạm vi của công cụ này.

Nguồn: http://clang-developers.42468.n3.nabble.com/Design-clang-format-td3980439.html

Tuy nhiên Clang gọn gàng lon, cờ tính năng được gọi là readability-braces-around-statements.

Nguồn: http://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html

Các vấn đề liên quan