Yield Statements
The yield
statement is used when generating a sequence to add a new value into the generated sequence. It can be used in two places: in iterator methods and for
loop expressions.
Please refer to these two topics for more details:
Examples:
Using yield
in an iterator, the following method will return a sequence with 12 items: start
, Value 0
, Value 1
, Value 2
, Value 3
, Value 4
, Value 5
, Value 6
, Value 7
, Value 8
, Value 9
, end
:
type
MyClass = public class
public
method Test: sequence of String; iterator;
end;
Implementation:
method MyClass.Test: sequence of String;
begin
yield 'start';
for i : Integer := 0 to 9 do
yield 'Value: '+i;
yield 'end';
end;
...
for each val in myClassInstance.Test do begin
Console.WriteLine(val);
end;
Using yield
in a for
loop expression, this creates a new sequence in x
containing 10 strings with Value 0
through Value 9
:
var x: sequence of string := for i := 0 to 0 yield 'Value: '+i;