mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-29 19:20:38 +02:00
* Add AddList to list classes (bug ID 32447)
git-svn-id: trunk@37268 -
This commit is contained in:
parent
d99b19734e
commit
aabc5dc217
@ -80,6 +80,7 @@ type
|
||||
function Insert(Index: Integer): Pointer;
|
||||
procedure Move(CurIndex, NewIndex: Integer);
|
||||
procedure Assign(Obj: TFPSList);
|
||||
procedure AddList(Obj: TFPSList);
|
||||
function Remove(Item: Pointer): Integer;
|
||||
procedure Pack;
|
||||
procedure Sort(Compare: TFPSListCompareFunc);
|
||||
@ -143,6 +144,7 @@ type
|
||||
property Last: T read GetLast write SetLast;
|
||||
{$ifndef VER2_4}
|
||||
procedure Assign(Source: TFPGList);
|
||||
procedure AddList(Source: TFPGList);
|
||||
{$endif VER2_4}
|
||||
function Remove(const Item: T): Integer; {$ifdef FGLINLINE} inline; {$endif}
|
||||
procedure Sort(Compare: TCompareFunc);
|
||||
@ -181,6 +183,7 @@ type
|
||||
procedure Insert(Index: Integer; const Item: T); {$ifdef FGLINLINE} inline; {$endif}
|
||||
property Last: T read GetLast write SetLast;
|
||||
{$ifndef VER2_4}
|
||||
procedure AddList(Source: TFPGObjectList);
|
||||
procedure Assign(Source: TFPGObjectList);
|
||||
{$endif VER2_4}
|
||||
function Remove(const Item: T): Integer; {$ifdef FGLINLINE} inline; {$endif}
|
||||
@ -221,6 +224,7 @@ type
|
||||
property Last: T read GetLast write SetLast;
|
||||
{$ifndef VER2_4}
|
||||
procedure Assign(Source: TFPGInterfacedObjectList);
|
||||
procedure AddList(Source: TFPGInterfacedObjectList);
|
||||
{$endif VER2_4}
|
||||
function Remove(const Item: T): Integer; {$ifdef FGLINLINE} inline; {$endif}
|
||||
procedure Sort(Compare: TCompareFunc);
|
||||
@ -798,17 +802,26 @@ begin
|
||||
QuickSort(0, FCount-1, Compare);
|
||||
end;
|
||||
|
||||
procedure TFPSList.Assign(Obj: TFPSList);
|
||||
procedure TFPSList.AddList(Obj: TFPSList);
|
||||
var
|
||||
i: Integer;
|
||||
begin
|
||||
if Obj.ItemSize <> FItemSize then
|
||||
Error(SListItemSizeError, 0);
|
||||
Clear;
|
||||
for I := 0 to Obj.Count - 1 do
|
||||
Add(Obj[i]);
|
||||
end;
|
||||
|
||||
procedure TFPSList.Assign(Obj: TFPSList);
|
||||
|
||||
begin
|
||||
// We must do this check here, to avoid clearing the list.
|
||||
if Obj.ItemSize <> FItemSize then
|
||||
Error(SListItemSizeError, 0);
|
||||
Clear;
|
||||
AddList(Obj);
|
||||
end;
|
||||
|
||||
{****************************************************************************}
|
||||
{* TFPGListEnumerator *}
|
||||
{****************************************************************************}
|
||||
@ -927,14 +940,21 @@ begin
|
||||
end;
|
||||
|
||||
{$ifndef VER2_4}
|
||||
procedure TFPGList.Assign(Source: TFPGList);
|
||||
procedure TFPGList.AddList(Source: TFPGList);
|
||||
|
||||
var
|
||||
i: Integer;
|
||||
|
||||
begin
|
||||
Clear;
|
||||
for I := 0 to Source.Count - 1 do
|
||||
Add(Source[i]);
|
||||
end;
|
||||
|
||||
procedure TFPGList.Assign(Source: TFPGList);
|
||||
begin
|
||||
Clear;
|
||||
AddList(Source);
|
||||
end;
|
||||
{$endif VER2_4}
|
||||
|
||||
function TFPGList.Remove(const Item: T): Integer;
|
||||
@ -1043,14 +1063,19 @@ begin
|
||||
end;
|
||||
|
||||
{$ifndef VER2_4}
|
||||
procedure TFPGObjectList.Assign(Source: TFPGObjectList);
|
||||
procedure TFPGObjectList.AddList(Source: TFPGObjectList);
|
||||
var
|
||||
i: Integer;
|
||||
begin
|
||||
Clear;
|
||||
for I := 0 to Source.Count - 1 do
|
||||
Add(Source[i]);
|
||||
end;
|
||||
|
||||
procedure TFPGObjectList.Assign(Source: TFPGObjectList);
|
||||
begin
|
||||
Clear;
|
||||
AddList(Source);
|
||||
end;
|
||||
{$endif VER2_4}
|
||||
|
||||
function TFPGObjectList.Remove(const Item: T): Integer;
|
||||
@ -1163,10 +1188,16 @@ end;
|
||||
|
||||
{$ifndef VER2_4}
|
||||
procedure TFPGInterfacedObjectList.Assign(Source: TFPGInterfacedObjectList);
|
||||
|
||||
begin
|
||||
Clear;
|
||||
AddList(Source);
|
||||
end;
|
||||
|
||||
procedure TFPGInterfacedObjectList.AddList(Source: TFPGInterfacedObjectList);
|
||||
var
|
||||
i: Integer;
|
||||
begin
|
||||
Clear;
|
||||
for I := 0 to Source.Count - 1 do
|
||||
Add(Source[i]);
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user