Method | Description | |
---|---|---|
Rewrite ( IYieldBreakStatement yieldBreakStatement ) : IStatement |
Replace a yield break with: { this.state = -2; return; }
|
|
Rewrite ( IYieldReturnStatement yieldReturnStatement ) : IStatement |
Replace a (yield return exp)with a new block of the form: { Fresh_Label:; this.current = exp; state = Fresh_state; return true; } and associate the newly generated Fresh_state with its entry point: Fresh_label.
|
Method | Description | |
---|---|---|
GetStateEntries ( |
Compute the mapping between every (starting and continuing) state and their unique entry points. It does so by inserting a unique label at the entry points and associate the state with the label.
|
|
YieldReturnYieldBreakReplacer ( |
public Rewrite ( IYieldBreakStatement yieldBreakStatement ) : IStatement | ||
yieldBreakStatement | IYieldBreakStatement | |
return | IStatement |
public Rewrite ( IYieldReturnStatement yieldReturnStatement ) : IStatement | ||
yieldReturnStatement | IYieldReturnStatement | |
return | IStatement |