Talk:for-in loop

From Free Pascal wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Proposed extensions - Select which enumerator to use

Why so complicated syntax and new keyword using? Why do not just always use syntax like for x in <IEnumeratorExpression> do ...;, as described in Variant3 and Variant4? In this case no need to introduce any FPC-specific operator (or just to describe default enumerator, to make text shorter?..), no need 'enumerator MoveNext' and 'enumerator Current' modifiers, because interface implementation already can be mapped to other methods... --Nashev 18:43, 12 September 2011 (CEST)

Proposed extensions - index

May be more pretty will python or php-like syntax for ch[i] in s do Writeln(i, ': ', ch); (see http://www.php2python.com/wiki/control-structures.foreach/ for reference) --Nashev 18:43, 12 September 2011 (CEST)

Multiple enumerators for one class

The underlying code causes a memory leak:

function TEnumerableTree.GetReverseEnumerator: TTreeReverseEnumerator;
begin
  Result:=TTreeReverseEnumerator.Create(Self);
end;

object created, but not destroyed