Changeset 320 for Generics/NativeGenerics/Units/GenericList.pas
- Timestamp:
- Feb 7, 2012, 2:03:20 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Generics/NativeGenerics/Units/GenericList.pas
r313 r320 34 34 function Add(Item: TItem): TIndex; 35 35 procedure AddArray(Values: array of TItem); 36 procedure AddList(List: TGList );37 procedure Assign(Source: TGList ); virtual;36 procedure AddList(List: TGList<TItem>); 37 procedure Assign(Source: TGList<TItem>); virtual; 38 38 procedure Clear; virtual; 39 39 procedure Delete(Index: TIndex); virtual; 40 40 procedure DeleteItems(Index, Count: TIndex); 41 function EqualTo(List: TGList ): Boolean;41 function EqualTo(List: TGList<TItem>): Boolean; 42 42 procedure Exchange(Index1, Index2: TIndex); 43 43 procedure Explode(Text, Separator: string; Converter: TFromStringConverter; SlicesCount: Integer = -1); … … 48 48 function Implode(Separator: string; Converter: TToStringConverter): string; 49 49 function IndexOf(Item: TItem; Start: TIndex = 0): TIndex; 50 function IndexOfList(List: TGList ; Start: TIndex = 0): TIndex;50 function IndexOfList(List: TGList<TItem>; Start: TIndex = 0): TIndex; 51 51 procedure Insert(Index: TIndex; Item: TItem); 52 procedure InsertList(Index: TIndex; List: TGList );52 procedure InsertList(Index: TIndex; List: TGList<TItem>); 53 53 procedure InsertArray(Index: TIndex; Values: array of TItem); 54 54 procedure Move(CurIndex, NewIndex: TIndex); … … 64 64 end; 65 65 66 T GListObject<TItem> = class(TGList<TItem>)66 TListObject<TItem> = class(TGList<TItem>) 67 67 private 68 68 procedure Put(Index: Integer; const AValue: TItem); override; … … 76 76 end; 77 77 78 T GListString<TItem> = class(TGList<TItem>)78 TListString<TItem> = class(TGList<TItem>) 79 79 private 80 80 public … … 93 93 RtlConsts; 94 94 95 { TGList }95 { TGList<TItem> } 96 96 97 97 function TGList<TItem>.GetCapacity: TIndex; … … 195 195 end; 196 196 197 procedure TGList<TItem>.Assign(Source: TGList );197 procedure TGList<TItem>.Assign(Source: TGList<TItem>); 198 198 var 199 199 I: TIndex; … … 239 239 end; 240 240 241 procedure TGList<TItem>.InsertList(Index: TIndex; List: TGList );241 procedure TGList<TItem>.InsertList(Index: TIndex; List: TGList<TItem>); 242 242 var 243 243 I: TIndex; … … 250 250 end; 251 251 252 function TGList<TItem>.IndexOfList(List: TGList ; Start: TIndex): TIndex;252 function TGList<TItem>.IndexOfList(List: TGList<TItem>; Start: TIndex): TIndex; 253 253 var 254 254 I: TIndex; … … 353 353 end; 354 354 355 function TGList<TItem>.EqualTo(List: TGList ): Boolean;355 function TGList<TItem>.EqualTo(List: TGList<TItem>): Boolean; 356 356 var 357 357 I: TIndex; … … 453 453 end; 454 454 455 procedure TGList<TItem>.AddList(List: TGList );455 procedure TGList<TItem>.AddList(List: TGList<TItem>); 456 456 var 457 457 I: TIndex; … … 514 514 end; 515 515 516 { T GListObject }517 518 procedure T GListObject<TItem>.Assign(Source: TGList<TItem>);516 { TListObject } 517 518 procedure TListObject<TItem>.Assign(Source: TGList<TItem>); 519 519 begin 520 520 Clear; … … 523 523 end; 524 524 525 procedure T GListObject<TItem>.Put(Index: Integer; const AValue: TItem);525 procedure TListObject<TItem>.Put(Index: Integer; const AValue: TItem); 526 526 begin 527 527 if OwnsObjects then FItems[Index].Free; … … 529 529 end; 530 530 531 procedure T GListObject<TItem>.Delete(Index: Integer);531 procedure TListObject<TItem>.Delete(Index: Integer); 532 532 begin 533 533 if OwnsObjects then FItems[Index].Free; … … 535 535 end; 536 536 537 procedure T GListObject<TItem>.Clear;537 procedure TListObject<TItem>.Clear; 538 538 var 539 539 I: Integer; … … 549 549 end; 550 550 551 constructor T GListObject<TItem>.Create;551 constructor TListObject<TItem>.Create; 552 552 begin 553 553 inherited; … … 555 555 end; 556 556 557 destructor T GListObject<TItem>.Destroy;557 destructor TListObject<TItem>.Destroy; 558 558 begin 559 559 Clear; … … 561 561 end; 562 562 563 { T GListString }564 565 procedure T GListString<TItem>.Assign(Source: TGList<TItem>);563 { TListString } 564 565 procedure TListString<TItem>.Assign(Source: TGList<TItem>); 566 566 begin 567 567 Clear; … … 569 569 end; 570 570 571 procedure T GListString<TItem>.Delete(Index: Integer);571 procedure TListString<TItem>.Delete(Index: Integer); 572 572 begin 573 573 FItems[Index] := ''; … … 575 575 end; 576 576 577 procedure T GListString<TItem>.Clear;577 procedure TListString<TItem>.Clear; 578 578 var 579 579 I: Integer; … … 587 587 end; 588 588 589 constructor T GListString<TItem>.Create;589 constructor TListString<TItem>.Create; 590 590 begin 591 591 inherited; 592 592 end; 593 593 594 destructor T GListString<TItem>.Destroy;594 destructor TListString<TItem>.Destroy; 595 595 begin 596 596 Clear;
Note:
See TracChangeset
for help on using the changeset viewer.