Я читал о ключевом слове yield
, когда наткнулся на пример главы из C # in Depth : http: // csharpindepth .com / Articles / Chapter6 / IteratorBlockImplementation.aspx .
Первый блок кода использует ключевое слово yield
для создания простого итератора. Но, второй блок кода показывает этот код после того, как компилятор разобрался с ним. Среди прочего, он превратил оператор yield
в конечный автомат.
Несколько других примеров кода, изменяемого компилятором, очевидно на странице.
Мой вопрос: Был ли автор действительно мог получить доступ к коду после компиляции, или он сделал вывод, что он собирался делать выглядит так?