mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-11-04 20:19:24 +01:00
LazUtils: Add a new unit IntegerList.
git-svn-id: trunk@56388 -
This commit is contained in:
parent
98be7f19c0
commit
04a49cc7ee
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -3143,6 +3143,7 @@ components/lazutils/fileutil.pas svneol=native#text/pascal
|
|||||||
components/lazutils/fpcadds.pas svneol=native#text/pascal
|
components/lazutils/fpcadds.pas svneol=native#text/pascal
|
||||||
components/lazutils/fpmake.pp svneol=native#text/plain
|
components/lazutils/fpmake.pp svneol=native#text/plain
|
||||||
components/lazutils/html2textrender.pas svneol=native#text/pascal
|
components/lazutils/html2textrender.pas svneol=native#text/pascal
|
||||||
|
components/lazutils/integerlist.pas svneol=native#text/pascal
|
||||||
components/lazutils/languages/lazutilsstrconsts.cs.po svneol=native#text/plain
|
components/lazutils/languages/lazutilsstrconsts.cs.po svneol=native#text/plain
|
||||||
components/lazutils/languages/lazutilsstrconsts.de.po svneol=native#text/plain
|
components/lazutils/languages/lazutilsstrconsts.de.po svneol=native#text/plain
|
||||||
components/lazutils/languages/lazutilsstrconsts.es.po svneol=native#text/plain
|
components/lazutils/languages/lazutilsstrconsts.es.po svneol=native#text/plain
|
||||||
|
|||||||
47
components/lazutils/integerlist.pas
Normal file
47
components/lazutils/integerlist.pas
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
{
|
||||||
|
*****************************************************************************
|
||||||
|
This file is part of LazUtils.
|
||||||
|
|
||||||
|
See the file COPYING.modifiedLGPL.txt, included in this distribution,
|
||||||
|
for details about the license.
|
||||||
|
*****************************************************************************
|
||||||
|
}
|
||||||
|
|
||||||
|
// A list of integers implemented using generics.
|
||||||
|
// Supports the same methods and properties as TStringList does for strings, except
|
||||||
|
// for "Sorted" property. Thus integers cannot be added to a sorted list correctly.
|
||||||
|
|
||||||
|
unit IntegerList;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
fgl;
|
||||||
|
|
||||||
|
function CompareInt(const Item1, Item2: Integer): Integer;
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
TIntegerList = class(specialize TFPGList<Integer>)
|
||||||
|
public
|
||||||
|
procedure Sort; overload;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
function CompareInt(const Item1, Item2: Integer): Integer;
|
||||||
|
begin
|
||||||
|
Result := Item1 - Item2;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TIntegerList }
|
||||||
|
|
||||||
|
procedure TIntegerList.Sort;
|
||||||
|
begin
|
||||||
|
inherited Sort(@CompareInt);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
@ -16,7 +16,7 @@
|
|||||||
<Description Value="Useful units for Lazarus packages."/>
|
<Description Value="Useful units for Lazarus packages."/>
|
||||||
<License Value="Modified LGPL-2"/>
|
<License Value="Modified LGPL-2"/>
|
||||||
<Version Major="1"/>
|
<Version Major="1"/>
|
||||||
<Files Count="95">
|
<Files Count="96">
|
||||||
<Item1>
|
<Item1>
|
||||||
<Filename Value="LazLoggerImpl.inc"/>
|
<Filename Value="LazLoggerImpl.inc"/>
|
||||||
<Type Value="Include"/>
|
<Type Value="Include"/>
|
||||||
@ -397,6 +397,10 @@
|
|||||||
<Filename Value="lazpasreadutil.pas"/>
|
<Filename Value="lazpasreadutil.pas"/>
|
||||||
<UnitName Value="lazpasreadutil"/>
|
<UnitName Value="lazpasreadutil"/>
|
||||||
</Item95>
|
</Item95>
|
||||||
|
<Item96>
|
||||||
|
<Filename Value="integerlist.pas"/>
|
||||||
|
<UnitName Value="integerlist"/>
|
||||||
|
</Item96>
|
||||||
</Files>
|
</Files>
|
||||||
<LazDoc Paths="../../docs/xml/lazutils"/>
|
<LazDoc Paths="../../docs/xml/lazutils"/>
|
||||||
<i18n>
|
<i18n>
|
||||||
|
|||||||
@ -21,7 +21,7 @@ uses
|
|||||||
StringHashList, TextStrings, Translations, TTCache, TTCalc, TTCMap, TTDebug,
|
StringHashList, TextStrings, Translations, TTCache, TTCalc, TTCMap, TTDebug,
|
||||||
TTError, TTFile, TTGLoad, TTInterp, TTLoad, TTMemory, TTObjs, TTProfile,
|
TTError, TTFile, TTGLoad, TTInterp, TTLoad, TTMemory, TTObjs, TTProfile,
|
||||||
TTRASTER, TTTables, TTTypes, UTF8Process, HTML2TextRender, Laz_AVL_Tree,
|
TTRASTER, TTTables, TTTypes, UTF8Process, HTML2TextRender, Laz_AVL_Tree,
|
||||||
CompWriterPas, LazPasReadUtil, LazarusPackageIntf;
|
CompWriterPas, LazPasReadUtil, IntegerList, LazarusPackageIntf;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user