Правила форматирования потока управления
§5 Поток управления
§5.1 Выражение if. Ключевое слово if отделяется от условия пробелом, а условие отделяется от блока кода пробелом.
// ✅ Верно
if condition { ... }
// ❌ Неверно
if(condition) { ... }
if condition{ ... }§5.2 else if/else. else if и else отделяются от предыдущего блока кода пробелом.
// ✅ Верно
if a > 0 { ... } else if a < 0 { ... } else { ... }
// ❌ Неверно
if a > 0 { ... }else if a < 0 { ... }else { ... }§5.3 Цикл for. Ключевое слово for, переменная, ключевое слово in и итератор разделяются пробелами.
// ✅ Верно
for item in collection { ... }
// ❌ Неверно
for item in(collection) { ... }
for(item) in collection { ... }§5.4 Цикл while. Ключевое слово while отделяется от условия пробелом.
// ✅ Верно
while condition { ... }
// ❌ Неверно
while(condition) { ... }§5.5 Метка цикла. Метка соединяется с ключевым словом цикла через : .
// ✅ Верно
'outer: for i in range(10) { ... }
// ❌ Неверно
'outer:for i in range(10) { ... }
'outer : for i in range(10) { ... }§5.6 Оператор Return
§5.6.1 Формат Return. Ключевое слово return отделяется от выражения пробелом.
// ✅ Верно
return 42;
return x + y;
// ❌ Неверно
return(42); // Отсутствует пробел
return 42; // Лишний пробел§5.6.2 Пустой Return. Для пустого return используется непосредственно ключевое слово return.
// ✅ Верно
return;
// ❌ Неверно
return ; // Лишний пробел
return void; // void не требуется§5.7 Оператор Break
§5.7.1 Формат Break. Ключевое слово break отделяется от метки пробелом.
// ✅ Верно
break;
break 'outer;
// ❌ Неверно
break(outer); // Неверный синтаксис
break 'outer; // Лишний пробел§5.8 Оператор Continue
§5.8.1 Формат Continue. Ключевое слово continue отделяется от метки пробелом.
// ✅ Верно
continue;
continue 'outer;
// ❌ Неверно
continue(outer); // Неверный синтаксис
continue 'outer; // Лишний пробел