C++ の EditorConfig プロパティ: 改行および折り返し
一般
ファイルの終わりに改行
プロパティ名:
insert_final_newline , [resharper_]cpp_insert_final_newline
使用可能な値:
true | false
新規行の配置
複合文の後の新しい行に「else」を配置する
プロパティ名:
[resharper_]cpp_new_line_before_else , [resharper_]new_line_before_else
使用可能な値:
true | false
例:
true |
|---|
if (true)
{
foo();
}
else
{
foo();
} |
false |
|---|
if (true)
{
foo();
} else
{
foo();
} |
複合ステートメントの後の新しい行に 'while' を配置する
プロパティ名:
[resharper_]cpp_new_line_before_while , [resharper_]new_line_before_while
使用可能な値:
true | false
例:
true |
|---|
do
{
foo();
}
while (true); |
false |
|---|
do
{
foo();
} while (true); |
複合ステートメントの後の新しい行に 'catch' を配置する
プロパティ名:
[resharper_]cpp_new_line_before_catch , [resharper_]new_line_before_catch
使用可能な値:
true | false
例:
true |
|---|
try
{
foo();
}
catch (...)
{
foo();
} |
false |
|---|
try
{
foo();
} catch (...)
{
foo();
} |
1 つの埋め込みステートメント内のブレークライン
プロパティ名:
[resharper_]cpp_simple_embedded_statement_style , [resharper_]simple_embedded_statement_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
if (true) foo();
else
foo(); |
on_single_line |
|---|
if (true) foo();
else foo(); |
line_break |
|---|
if (true)
foo();
else
foo(); |
単純な 'case' ステートメントの改行
プロパティ名:
[resharper_]cpp_simple_case_statement_style , [resharper_]simple_case_statement_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
switch (a)
{
case b: break;
case c:
break;
} |
on_single_line |
|---|
switch (a)
{
case b: break;
case c: break;
} |
line_break |
|---|
switch (a)
{
case b:
break;
case c:
break;
} |
メンバー関数定義後のブレークライン戻り値の型
プロパティ名:
[resharper_]cpp_function_definition_return_type_style , [resharper_]function_definition_return_type_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
struct Boo
{
int* foo() { return 0; }
char*
bar() { return 0; }
}; |
on_single_line |
|---|
struct Boo
{
int* foo() { return 0; }
char* bar() { return 0; }
}; |
line_break |
|---|
struct Boo
{
int*
foo() { return 0; }
char*
bar() { return 0; }
}; |
トップレベル関数定義の戻り型の後のブレークライン
プロパティ名:
[resharper_]cpp_toplevel_function_definition_return_type_style , [resharper_]toplevel_function_definition_return_type_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
int* foo() { return 0; }
char*
bar() { return 0; } |
on_single_line |
|---|
int* foo() { return 0; }
char* bar() { return 0; } |
line_break |
|---|
int*
foo() { return 0; }
char*
bar() { return 0; } |
メンバー関数宣言後の行を中断する戻り値の型
プロパティ名:
[resharper_]cpp_function_declaration_return_type_style , [resharper_]function_declaration_return_type_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
struct Boo
{
int* foo();
char*
bar();
}; |
on_single_line |
|---|
struct Boo
{
int* foo();
char* bar();
}; |
line_break |
|---|
struct Boo
{
int*
foo();
char*
bar();
}; |
トップレベル関数宣言後のブレークライン戻り値の型
プロパティ名:
[resharper_]cpp_toplevel_function_declaration_return_type_style , [resharper_]toplevel_function_declaration_return_type_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
int* foo();
char*
bar(); |
on_single_line |
|---|
int* foo();
char* bar(); |
line_break |
|---|
int*
foo();
char*
bar(); |
テンプレート宣言のテンプレート <...> の後の改行行
プロパティ名:
[resharper_]cpp_break_template_declaration , [resharper_]break_template_declaration
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
template <class T>
void foo();
template <class T> void bar(); |
on_single_line |
|---|
template <class T> void foo();
template <class T> void bar(); |
line_break |
|---|
template <class T>
void foo();
template <class T>
void bar(); |
init-statement の後の改行
プロパティ名:
[resharper_]cpp_line_break_after_init_statement , [resharper_]line_break_after_init_statement
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
if (bool b = true; b)
foo(); |
on_single_line |
|---|
if (bool b = true; b)
foo(); |
line_break |
|---|
if (bool b = true;
b)
foo(); |
require-clause の前に改行
プロパティ名:
[resharper_]cpp_line_break_before_requires_clause , [resharper_]line_break_before_requires_clause
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
template <bool T>
requires T
void foo();
template <bool T> requires T
void bar(); |
on_single_line |
|---|
template <bool T> requires T
void foo();
template <bool T> requires T
void bar(); |
line_break |
|---|
template <bool T>
requires T
void foo();
template <bool T>
requires T
void bar(); |
メンバー初期化子リストのコロンの前の行を中断する
プロパティ名:
[resharper_]cpp_member_initializer_list_style , [resharper_]member_initializer_list_style
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
struct X
{
X(): x(0)
{
}
X(int x)
: x(x)
{
}
int x;
}; |
on_single_line |
|---|
struct X
{
X(): x(0)
{
}
X(int x): x(x)
{
}
int x;
}; |
line_break |
|---|
struct X
{
X()
: x(0)
{
}
X(int x)
: x(x)
{
}
int x;
}; |
メンバー初期化子リストのコロンの後の行を中断する
プロパティ名:
[resharper_]cpp_line_break_after_colon_in_member_initializer_lists , [resharper_]line_break_after_colon_in_member_initializer_lists
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
struct X
{
X(): x(0)
{
}
X(int x)
: x(x)
{
}
int x;
}; |
on_single_line |
|---|
struct X
{
X(): x(0)
{
}
X(int x)
: x(x)
{
}
int x;
}; |
line_break |
|---|
struct X
{
X():
x(0)
{
}
X(int x)
:
x(x)
{
}
int x;
}; |
後続の戻り値の型の '->' の前に改行
プロパティ名:
[resharper_]cpp_line_break_before_deref_in_trailing_return_types , [resharper_]line_break_before_deref_in_trailing_return_types
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
auto foo() -> int
{
} |
on_single_line |
|---|
auto foo() -> int
{
} |
line_break |
|---|
auto foo()
-> int
{
} |
末尾の戻り値の型の '->' の後の改行
プロパティ名:
[resharper_]cpp_line_break_after_deref_in_trailing_return_types , [resharper_]line_break_after_deref_in_trailing_return_types
使用可能な値:
do_not_change: 変更しないon_single_line: 強制的に 1 行に入れるline_break: 強制改行
例:
do_not_change |
|---|
auto foo() -> int
{
} |
on_single_line |
|---|
auto foo() -> int
{
} |
line_break |
|---|
auto foo() ->
int
{
} |
メンバー初期化子リストのコンマの前の行を中断する
プロパティ名:
[resharper_]cpp_line_break_before_comma_in_member_initializer_lists , [resharper_]line_break_before_comma_in_member_initializer_lists
使用可能な値:
true | false
例:
true |
|---|
struct MyStruct
{
MyStruct() : first(f)
, second(s)
{
}
}; |
false |
|---|
struct MyStruct
{
MyStruct() : first(f), second(s)
{
}
}; |
メンバー初期化子リストのコンマの後の改行
プロパティ名:
[resharper_]cpp_line_break_after_comma_in_member_initializer_lists , [resharper_]line_break_after_comma_in_member_initializer_lists
使用可能な値:
true | false
例:
true |
|---|
struct MyStruct
{
MyStruct() : first(f),
second(s)
{
}
}; |
false |
|---|
struct MyStruct
{
MyStruct() : first(f), second(s)
{
}
}; |
同じ行に C++ /CLI 総称制約を許可する
プロパティ名:
[resharper_]cpp_place_type_constraints_on_same_line , [resharper_]place_type_constraints_on_same_line
使用可能な値:
true | false
例:
true |
|---|
generic<class T>
class C
where T : IEnumerable{}; |
false |
|---|
generic<class T>
class C
where T : IEnumerable{}; |
行折り返し
既存の改行を維持する
プロパティ名:
[resharper_]cpp_keep_user_linebreaks , [resharper_]keep_user_linebreaks
使用可能な値:
true | false
例:
フォーマット前 | フォーマット後 true |
|---|---|
int var = condition
? SomeFunc1()
: SomeFunc2(); | int var = condition
? SomeFunc1()
: SomeFunc2(); |
フォーマット前 | フォーマット後 false |
|---|---|
int var = condition
? SomeFunc1()
: SomeFunc2(); | int var = condition ? SomeFunc1() : SomeFunc2(); |
次でハードラップ
プロパティ名:
max_line_length , [resharper_]cpp_max_line_length
使用可能な値:
整数
「,」の前に折り返すことを好む
プロパティ名:
[resharper_]cpp_wrap_before_comma , [resharper_]wrap_before_comma
使用可能な値:
true | false
例:
true |
|---|
CallMethod(arg1, arg2, arg3
, arg4, arg5, arg6
, arg7); |
false |
|---|
CallMethod(arg1, arg2, arg3,
arg4, arg5, arg6,
arg7); |
基本句の「,」の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_comma_in_base_clause , [resharper_]wrap_before_comma_in_base_clause
使用可能な値:
true | false
例:
true |
|---|
class Derived : BaseClass, I1
, I2, I3, I4
{
} |
false |
|---|
class Derived : BaseClass, I1,
I2, I3, I4
{
} |
ラップ三項演算子
プロパティ名:
[resharper_]cpp_wrap_ternary_expr_style , [resharper_]wrap_ternary_expr_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
myField = someCondition ? true
: false; |
chop_if_long |
|---|
myField = someCondition
? true
: false; |
chop_always |
|---|
myField = someCondition
? true
: false; |
「?」の前に折り返すことを好む三項演算子の「:」
プロパティ名:
[resharper_]cpp_wrap_before_ternary_opsigns , [resharper_]wrap_before_ternary_opsigns
使用可能な値:
true | false
例:
true |
|---|
return
hereGoesSomeBoolExpression
? returnThisIfTrue
: returnThatIfFalse; |
false |
|---|
return
hereGoesSomeBoolExpression ?
returnThisIfTrue :
returnThatIfFalse; |
「:」の前に折り返すことを好む
プロパティ名:
[resharper_]cpp_wrap_before_colon , [resharper_]wrap_before_colon
使用可能な値:
true | false
例:
true |
|---|
class Derived
: BaseClass, I1, I2, I3, I4
{
} |
false |
|---|
class Derived : BaseClass, I1,
I2, I3, I4
{
} |
最初の C++/CLI 汎用制約の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_first_type_parameter_constraint , [resharper_]wrap_before_first_type_parameter_constraint
使用可能な値:
true | false
例:
true |
|---|
generic<class T1, T2, T3>
class C
where T1: I1
where T2: I2
where T3 : ref
class
{
}; |
false |
|---|
generic<class T1, T2, T3>
class C
where T1: I1
where T2: I2
where T3 : ref
class
{
}; |
複数の C++ /CLI ジェネリクス制約をラップする
プロパティ名:
[resharper_]cpp_wrap_multiple_type_parameter_constraints_style , [resharper_]wrap_multiple_type_parameter_constraints_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
generic<class T1, T2, T3>
class C
where T1: I1
where T2: I2
where T3 : ref
class
{
}; |
chop_if_long |
|---|
generic<class T1, T2, T3>
class C
where T1: I1
where T2: I2
where T3 : ref
class
{
}; |
chop_always |
|---|
generic<class T1, T2, T3>
class C
where T1: I1
where T2: I2
where T3 : ref
class
{
}; |
列挙型定義をラップする
プロパティ名:
[resharper_]cpp_wrap_enumeration_style , [resharper_]wrap_enumeration_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
enum
{
ONE, TWO, THREE, FOUR,
FIVE, SIX, SEVEN
}; |
chop_if_long |
|---|
enum
{
ONE,
TWO,
THREE,
FOUR,
FIVE,
SIX,
SEVEN
}; |
chop_always |
|---|
enum
{
ONE,
TWO,
THREE,
FOUR,
FIVE,
SIX,
SEVEN
}; |
ブレースされた初期化子リストをラップする
プロパティ名:
[resharper_]cpp_wrap_braced_init_list_style , [resharper_]wrap_braced_init_list_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
std::map<int, std::string> m =
{
{1, "a"},
{2, {'a', 'b', 'c'}},
{3, s1}, {4, s2}
}; |
chop_if_long |
|---|
std::map<int, std::string> m =
{
{1, "a"},
{2, {'a', 'b', 'c'}},
{3, s1},
{4, s2}
}; |
chop_always |
|---|
std::map<int, std::string> m =
{
{
1,
"a"
},
{
2,
{
'a',
'b',
'c'
}
},
{
3,
s1
},
{
4,
s2
}
}; |
ラップベースクラスリスト
プロパティ名:
[resharper_]cpp_wrap_base_clause_style , [resharper_]wrap_base_clause_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
class Derived : BaseClass, I1,
I2, I3, I4
{
} |
chop_if_long |
|---|
class Derived : BaseClass,
I1,
I2,
I3,
I4
{
} |
chop_always |
|---|
class Derived : BaseClass,
I1,
I2,
I3,
I4
{
} |
ラップコンストラクター初期化子
プロパティ名:
[resharper_]cpp_wrap_ctor_initializer_style , [resharper_]wrap_ctor_initializer_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
struct XXX
{
X(): x(0), y(0), z(0)
{
}
XXX(int x, int y, int z) :
x(x), y(y), z(z)
{
}
int x;
int y;
int z;
}; |
chop_if_long |
|---|
struct XXX
{
X(): x(0), y(0), z(0)
{
}
XXX(int x, int y, int z) :
x(x),
y(y),
z(z)
{
}
int x;
int y;
int z;
}; |
chop_always |
|---|
struct XXX
{
X(): x(0),
y(0),
z(0)
{
}
XXX(int x, int y, int z) :
x(x),
y(y),
z(z)
{
}
int x;
int y;
int z;
}; |
仮パラメーターをラップする
プロパティ名:
[resharper_]cpp_wrap_parameters_style , [resharper_]wrap_parameters_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
void SomeMethod(int p1, int p2,
int p3, int p4)
{
} |
chop_if_long |
|---|
void SomeMethod(int p1,
int p2,
int p3,
int p4)
{
} |
chop_always |
|---|
void SomeMethod(int p1,
int p2,
int p3,
int p4)
{
} |
宣言で「(」の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_declaration_lpar , [resharper_]wrap_before_declaration_lpar
使用可能な値:
true | false
例:
true |
|---|
void SomeMethod
(int p1, int p2, int p3,
int p4)
{
} |
false |
|---|
void SomeMethod(int p1, int p2,
int p3, int p4)
{
} |
宣言で「(」の後にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_after_declaration_lpar , [resharper_]wrap_after_declaration_lpar
使用可能な値:
true | false
例:
true |
|---|
void SomeMethod(
int p1, int p2, int p3,
int p4)
{
} |
false |
|---|
void SomeMethod(int p1, int p2,
int p3, int p4)
{
} |
宣言で「)」の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_declaration_rpar , [resharper_]wrap_before_declaration_rpar
使用可能な値:
true | false
例:
true |
|---|
void SomeMethod(int p1, int p2,
int p3, int p4
)
{
} |
false |
|---|
void SomeMethod(int p1, int p2,
int p3, int p4)
{
} |
呼び出し引数をラップする
プロパティ名:
[resharper_]cpp_wrap_arguments_style , [resharper_]wrap_arguments_style
使用可能な値:
wrap_if_long: シンプルラップchop_if_long: ロングまたは複数行の場合はチョップchop_always: 常にチョップ
例:
wrap_if_long |
|---|
CallMethod(arg1, arg2, arg3,
arg4, arg5); |
chop_if_long |
|---|
CallMethod(arg1,
arg2,
arg3,
arg4,
arg5); |
chop_always |
|---|
CallMethod(arg1,
arg2,
arg3,
arg4,
arg5); |
呼び出しで「(」の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_invocation_lpar , [resharper_]wrap_before_invocation_lpar
使用可能な値:
true | false
例:
true |
|---|
CallMethod
(arg1, arg2, arg3, arg4,
arg5); |
false |
|---|
CallMethod(arg1, arg2, arg3,
arg4, arg5); |
呼び出しで「(」の後にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_after_invocation_lpar , [resharper_]wrap_after_invocation_lpar
使用可能な値:
true | false
例:
true |
|---|
CallMethod(
arg1, arg2, arg3, arg4,
arg5); |
false |
|---|
CallMethod(arg1, arg2, arg3,
arg4, arg5); |
呼び出しで「)」の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_invocation_rpar , [resharper_]wrap_before_invocation_rpar
使用可能な値:
true | false
例:
true |
|---|
CallMethod(arg1, arg2, arg3,
arg4, arg5
); |
false |
|---|
CallMethod(arg1, arg2, arg3,
arg4, arg5); |
初期化子リストで「{」の後にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_after_expression_lbrace , [resharper_]wrap_after_expression_lbrace
使用可能な値:
true | false
例:
true |
|---|
map<int, string> m = {
{1, "a"},
{2, {'a', 'b', 'c'}},
{3, s1}, {4, s2}
}; |
false |
|---|
map<int, string> m = {{1, "a"},
{2, {'a', 'b', 'c'}},
{3, s1}, {4, s2}
}; |
初期化子リストで「}」の前にラップすることを好む
プロパティ名:
[resharper_]cpp_wrap_before_expression_rbrace , [resharper_]wrap_before_expression_rbrace
使用可能な値:
true | false
例:
true |
|---|
map<int, string> m = {
{1, "a"},
{2, {'a', 'b', 'c'}},
{3, s1}, {4, s2}
}; |
false |
|---|
map<int, string> m = {
{1, "a"},
{2, {'a', 'b', 'c'}},
{3, s1}, {4, s2}}; |