|
@@ -4,6 +4,7 @@ program tenumerators1;
|
|
{$mode objfpc}{$H+}
|
|
{$mode objfpc}{$H+}
|
|
{$endif}
|
|
{$endif}
|
|
{$apptype console}
|
|
{$apptype console}
|
|
|
|
+{$x-}
|
|
uses
|
|
uses
|
|
Classes;
|
|
Classes;
|
|
|
|
|
|
@@ -18,12 +19,13 @@ var
|
|
Item: Pointer;
|
|
Item: Pointer;
|
|
List: TFPList;
|
|
List: TFPList;
|
|
Enumerator: TFPListEnumerator;
|
|
Enumerator: TFPListEnumerator;
|
|
|
|
+ i: integer;
|
|
begin
|
|
begin
|
|
// check TFPList enumerator
|
|
// check TFPList enumerator
|
|
List := TFPList.Create;
|
|
List := TFPList.Create;
|
|
- List.Add(Pointer(1));
|
|
|
|
- List.Add(Pointer(2));
|
|
|
|
- List.Add(Pointer(3));
|
|
|
|
|
|
+ i:=List.Add(Pointer(1));
|
|
|
|
+ i:=List.Add(Pointer(2));
|
|
|
|
+ i:=List.Add(Pointer(3));
|
|
|
|
|
|
Enumerator := List.GetEnumerator;
|
|
Enumerator := List.GetEnumerator;
|
|
while Enumerator.MoveNext do
|
|
while Enumerator.MoveNext do
|
|
@@ -41,12 +43,13 @@ var
|
|
Item: Pointer;
|
|
Item: Pointer;
|
|
List: TList;
|
|
List: TList;
|
|
Enumerator: TListEnumerator;
|
|
Enumerator: TListEnumerator;
|
|
|
|
+ i: integer;
|
|
begin
|
|
begin
|
|
// check TList enumerator
|
|
// check TList enumerator
|
|
List := TList.Create;
|
|
List := TList.Create;
|
|
- List.Add(Pointer(1));
|
|
|
|
- List.Add(Pointer(2));
|
|
|
|
- List.Add(Pointer(3));
|
|
|
|
|
|
+ i:=List.Add(Pointer(1));
|
|
|
|
+ i:=List.Add(Pointer(2));
|
|
|
|
+ i:=List.Add(Pointer(3));
|
|
|
|
|
|
Enumerator := List.GetEnumerator;
|
|
Enumerator := List.GetEnumerator;
|
|
while Enumerator.MoveNext do
|
|
while Enumerator.MoveNext do
|
|
@@ -66,9 +69,9 @@ var
|
|
begin
|
|
begin
|
|
// check TCollection enumerator
|
|
// check TCollection enumerator
|
|
Collection := TCollection.Create(TCollectionItem);
|
|
Collection := TCollection.Create(TCollectionItem);
|
|
- Collection.Add;
|
|
|
|
- Collection.Add;
|
|
|
|
- Collection.Add;
|
|
|
|
|
|
+ item:=Collection.Add;
|
|
|
|
+ item:=Collection.Add;
|
|
|
|
+ item:=Collection.Add;
|
|
|
|
|
|
Enumerator := Collection.GetEnumerator;
|
|
Enumerator := Collection.GetEnumerator;
|
|
while Enumerator.MoveNext do
|
|
while Enumerator.MoveNext do
|
|
@@ -85,12 +88,13 @@ var
|
|
Item: String;
|
|
Item: String;
|
|
Strings: TStrings;
|
|
Strings: TStrings;
|
|
Enumerator: TStringsEnumerator;
|
|
Enumerator: TStringsEnumerator;
|
|
|
|
+ i: integer;
|
|
begin
|
|
begin
|
|
// check TStrings enumerator
|
|
// check TStrings enumerator
|
|
Strings := TStringList.Create;
|
|
Strings := TStringList.Create;
|
|
- Strings.Add('1');
|
|
|
|
- Strings.Add('2');
|
|
|
|
- Strings.Add('3');
|
|
|
|
|
|
+ i:=Strings.Add('1');
|
|
|
|
+ i:=Strings.Add('2');
|
|
|
|
+ i:=Strings.Add('3');
|
|
|
|
|
|
Enumerator := Strings.GetEnumerator;
|
|
Enumerator := Strings.GetEnumerator;
|
|
while Enumerator.MoveNext do
|
|
while Enumerator.MoveNext do
|
|
@@ -110,9 +114,9 @@ var
|
|
begin
|
|
begin
|
|
// check TComponent enumerator
|
|
// check TComponent enumerator
|
|
Component := TComponent.Create(nil);
|
|
Component := TComponent.Create(nil);
|
|
- TComponent.Create(Component);
|
|
|
|
- TComponent.Create(Component);
|
|
|
|
- TComponent.Create(Component);
|
|
|
|
|
|
+ item:=TComponent.Create(Component);
|
|
|
|
+ item:=TComponent.Create(Component);
|
|
|
|
+ item:=TComponent.Create(Component);
|
|
|
|
|
|
Enumerator := Component.GetEnumerator;
|
|
Enumerator := Component.GetEnumerator;
|
|
while Enumerator.MoveNext do
|
|
while Enumerator.MoveNext do
|
|
@@ -129,15 +133,16 @@ var
|
|
Item: IUnknown;
|
|
Item: IUnknown;
|
|
List: TInterfaceList;
|
|
List: TInterfaceList;
|
|
Enumerator: TInterfaceListEnumerator;
|
|
Enumerator: TInterfaceListEnumerator;
|
|
|
|
+ i: integer;
|
|
begin
|
|
begin
|
|
// check TInterfaceList enumerator
|
|
// check TInterfaceList enumerator
|
|
List := TInterfaceList.Create;
|
|
List := TInterfaceList.Create;
|
|
Item := TInterfacedObject.Create;
|
|
Item := TInterfacedObject.Create;
|
|
- List.Add(Item);
|
|
|
|
|
|
+ i:=List.Add(Item);
|
|
Item := TInterfacedObject.Create;
|
|
Item := TInterfacedObject.Create;
|
|
- List.Add(Item);
|
|
|
|
|
|
+ i:=List.Add(Item);
|
|
Item := TInterfacedObject.Create;
|
|
Item := TInterfacedObject.Create;
|
|
- List.Add(Item);
|
|
|
|
|
|
+ i:=List.Add(Item);
|
|
|
|
|
|
Enumerator := List.GetEnumerator;
|
|
Enumerator := List.GetEnumerator;
|
|
while Enumerator.MoveNext do
|
|
while Enumerator.MoveNext do
|