Halt¶
halt
- специальный оператор, аварийно завершающий выполнение программы. Его следует применять в случаях, когда дальнейшее выполнение программы невозможно.
Оператор halt является терминальным, что означает, что после него не позволены никакие другие операторы и что его наличие равносильно выходу из функции для анализатора потока управления.
fn Div5( u32 x ) : u32
{
if( x == 0u )
{
halt;
}
else
{
return x / 5u;
}
// Ок, функция завершится во всех ветвях потока управления, либо через return, либо через halt
}
halt if¶
Существует также версия оператора halt
с условием - halt if
. Аварийное завершение программы произойдёт если условие истинно.
В отличие от безусловного halt
, halt if
не является терминальным.
fn Div5( u32 x ) : u32
{
halt if( x == 0u );
return x / 5u;
}