제너레이터 타입

Generator 타입 매개변수

`yield`, `return`, `next(value)`는 모두 흐름 제어지만 값이 오가는 방향과 타입 의미가 다릅니다.

Yield

밖으로 내보내는 값

반복 소비자가 `next()`로 받을 중간 결과의 타입입니다.

IteratorResult<Y>
Return

끝날 때 확정값

제너레이터가 완료될 때 `done: true`와 함께 전달되는 값입니다.

Next

다시 넣는 입력

소비자가 `next(value)`로 제너레이터 내부에 되돌려 보내는 타입입니다.

Control

return과 throw

흐름을 조기 종료하거나 실패를 주입할 때 정리 로직을 함께 설계합니다.

Generator<Y,R,N>