Expression Model

Rust 함수는 구문과 표현식의 차이로 반환 흐름이 결정된다

세미콜론이 붙은 구문은 값을 남기지 않고, 블록의 마지막 표현식은 함수나 블록의 결과가 된다.

반환 판단

no semicolon

매개변수

Rust 함수는 매개변수 타입을 반드시 명시해 호출 계약을 분명히 한다.

표현식

블록 마지막 줄에 세미콜론이 없으면 그 값이 결과로 사용된다.

반환 타입

화살표 뒤 타입과 마지막 표현식의 타입이 맞아야 컴파일된다.

paramsblockexprreturn
읽는 법

Rust에서 반환값이 이상할 때는 마지막 줄이 표현식인지, 세미콜론으로 구문이 되어버렸는지 먼저 확인한다.