You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
(20) |
May
(48) |
Jun
(8) |
Jul
(23) |
Aug
(41) |
Sep
(42) |
Oct
(22) |
Nov
(17) |
Dec
(36) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(43) |
Feb
(42) |
Mar
(17) |
Apr
(39) |
May
(16) |
Jun
(35) |
Jul
(37) |
Aug
(47) |
Sep
(49) |
Oct
(9) |
Nov
(52) |
Dec
(37) |
| 2008 |
Jan
(48) |
Feb
(21) |
Mar
(7) |
Apr
(2) |
May
(5) |
Jun
(17) |
Jul
(17) |
Aug
(40) |
Sep
(58) |
Oct
(38) |
Nov
(19) |
Dec
(32) |
| 2009 |
Jan
(67) |
Feb
(46) |
Mar
(54) |
Apr
(34) |
May
(37) |
Jun
(52) |
Jul
(67) |
Aug
(72) |
Sep
(48) |
Oct
(35) |
Nov
(27) |
Dec
(12) |
| 2010 |
Jan
(56) |
Feb
(46) |
Mar
(19) |
Apr
(14) |
May
(21) |
Jun
(3) |
Jul
(13) |
Aug
(48) |
Sep
(34) |
Oct
(51) |
Nov
(16) |
Dec
(32) |
| 2011 |
Jan
(36) |
Feb
(14) |
Mar
(12) |
Apr
(3) |
May
(5) |
Jun
(24) |
Jul
(15) |
Aug
(30) |
Sep
(21) |
Oct
(4) |
Nov
(25) |
Dec
(23) |
| 2012 |
Jan
(45) |
Feb
(42) |
Mar
(19) |
Apr
(14) |
May
(13) |
Jun
(7) |
Jul
(3) |
Aug
(46) |
Sep
(21) |
Oct
(10) |
Nov
(2) |
Dec
|
| 2013 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <ob...@us...> - 2012-02-23 21:46:15
|
Revision: 3742
http://jcl.svn.sourceforge.net/jcl/?rev=3742&view=rev
Author: obones
Date: 2012-02-23 21:46:09 +0000 (Thu, 23 Feb 2012)
Log Message:
-----------
Missing used files (by JclMsBuild)
Modified Paths:
--------------
trunk/jcl/packages/c6/Jcl.bpk
trunk/jcl/packages/c6/Jcl.dpk
trunk/jcl/packages/xml/Jcl-R.xml
Modified: trunk/jcl/packages/c6/Jcl.bpk
===================================================================
--- trunk/jcl/packages/c6/Jcl.bpk 2012-02-23 21:12:12 UTC (rev 3741)
+++ trunk/jcl/packages/c6/Jcl.bpk 2012-02-23 21:46:09 UTC (rev 3742)
@@ -64,6 +64,7 @@
..\..\lib\c6\JclDebugSerialization.obj
..\..\lib\c6\JclDebugXMLDeserializer.obj
..\..\lib\c6\JclDebugXMLSerializer.obj
+ ..\..\lib\c6\JclDotNet.obj
..\..\lib\c6\JclHookExcept.obj
..\..\lib\c6\JclLANMan.obj
..\..\lib\c6\JclLocales.obj
@@ -85,6 +86,8 @@
..\..\lib\c6\JclWin32.obj
..\..\lib\c6\JclWin32Ex.obj
..\..\lib\c6\JclWinMIDI.obj
+ ..\..\lib\c6\mscoree_TLB.obj
+ ..\..\lib\c6\mscorlib_TLB.obj
..\..\lib\c6\MSTask.obj
..\..\lib\c6\sevenzip.obj
..\..\lib\c6\Snmp.obj
@@ -188,6 +191,7 @@
<FILE FILENAME="..\..\source\windows\JclDebugSerialization.pas" FORMNAME="" UNITNAME="JclDebugSerialization" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclDebugXMLDeserializer.pas" FORMNAME="" UNITNAME="JclDebugXMLDeserializer" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclDebugXMLSerializer.pas" FORMNAME="" UNITNAME="JclDebugXMLSerializer" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
+ <FILE FILENAME="..\..\source\windows\JclDotNet.pas" FORMNAME="" UNITNAME="JclDotNet" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclHookExcept.pas" FORMNAME="" UNITNAME="JclHookExcept" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclLANMan.pas" FORMNAME="" UNITNAME="JclLANMan" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclLocales.pas" FORMNAME="" UNITNAME="JclLocales" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
@@ -209,6 +213,8 @@
<FILE FILENAME="..\..\source\windows\JclWin32.pas" FORMNAME="" UNITNAME="JclWin32" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclWin32Ex.pas" FORMNAME="" UNITNAME="JclWin32Ex" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\JclWinMIDI.pas" FORMNAME="" UNITNAME="JclWinMIDI" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
+ <FILE FILENAME="..\..\source\windows\mscoree_TLB.pas" FORMNAME="" UNITNAME="mscoree_TLB" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
+ <FILE FILENAME="..\..\source\windows\mscorlib_TLB.pas" FORMNAME="" UNITNAME="mscorlib_TLB" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\MSTask.pas" FORMNAME="" UNITNAME="MSTask" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\sevenzip.pas" FORMNAME="" UNITNAME="sevenzip" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\windows\Snmp.pas" FORMNAME="" UNITNAME="Snmp" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
Modified: trunk/jcl/packages/c6/Jcl.dpk
===================================================================
--- trunk/jcl/packages/c6/Jcl.dpk 2012-02-23 21:12:12 UTC (rev 3741)
+++ trunk/jcl/packages/c6/Jcl.dpk 2012-02-23 21:46:09 UTC (rev 3742)
@@ -95,6 +95,7 @@
JclDebugSerialization in '..\..\source\windows\JclDebugSerialization.pas' ,
JclDebugXMLDeserializer in '..\..\source\windows\JclDebugXMLDeserializer.pas' ,
JclDebugXMLSerializer in '..\..\source\windows\JclDebugXMLSerializer.pas' ,
+ JclDotNet in '..\..\source\windows\JclDotNet.pas' ,
JclHookExcept in '..\..\source\windows\JclHookExcept.pas' ,
JclLANMan in '..\..\source\windows\JclLANMan.pas' ,
JclLocales in '..\..\source\windows\JclLocales.pas' ,
@@ -116,6 +117,8 @@
JclWin32 in '..\..\source\windows\JclWin32.pas' ,
JclWin32Ex in '..\..\source\windows\JclWin32Ex.pas' ,
JclWinMIDI in '..\..\source\windows\JclWinMIDI.pas' ,
+ mscoree_TLB in '..\..\source\windows\mscoree_TLB.pas' ,
+ mscorlib_TLB in '..\..\source\windows\mscorlib_TLB.pas' ,
MSTask in '..\..\source\windows\MSTask.pas' ,
sevenzip in '..\..\source\windows\sevenzip.pas' ,
Snmp in '..\..\source\windows\Snmp.pas'
Modified: trunk/jcl/packages/xml/Jcl-R.xml
===================================================================
--- trunk/jcl/packages/xml/Jcl-R.xml 2012-02-23 21:12:12 UTC (rev 3741)
+++ trunk/jcl/packages/xml/Jcl-R.xml 2012-02-23 21:46:09 UTC (rev 3742)
@@ -106,7 +106,7 @@
<File Name="..\..\source\windows\JclDebugSerialization.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclDebugXMLDeserializer.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclDebugXMLSerializer.pas" Targets="Windows" Formname="" Condition=""/>
- <File Name="..\..\source\windows\JclDotNet.pas" Targets="Pascal" Formname="" Condition=""/>
+ <File Name="..\..\source\windows\JclDotNet.pas" Targets="Pascal,BCB" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclHookExcept.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclLANMan.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclLocales.pas" Targets="Windows" Formname="" Condition=""/>
@@ -128,8 +128,8 @@
<File Name="..\..\source\windows\JclWin32.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclWin32Ex.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\JclWinMIDI.pas" Targets="Windows" Formname="" Condition=""/>
- <File Name="..\..\source\windows\mscoree_TLB.pas" Targets="help,Pascal" Formname="" Condition=""/>
- <File Name="..\..\source\windows\mscorlib_TLB.pas" Targets="help,Pascal" Formname="" Condition=""/>
+ <File Name="..\..\source\windows\mscoree_TLB.pas" Targets="Windows" Formname="" Condition=""/>
+ <File Name="..\..\source\windows\mscorlib_TLB.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\MSTask.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\sevenzip.pas" Targets="Windows" Formname="" Condition=""/>
<File Name="..\..\source\windows\Snmp.pas" Targets="Windows" Formname="" Condition=""/>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-23 21:12:19
|
Revision: 3741
http://jcl.svn.sourceforge.net/jcl/?rev=3741&view=rev
Author: outchy
Date: 2012-02-23 21:12:12 +0000 (Thu, 23 Feb 2012)
Log Message:
-----------
remove dependency of package JclDeveloperTools on the package VCL.
Modified Paths:
--------------
trunk/jcl/packages/c6/JclDeveloperTools.bpk
trunk/jcl/packages/c6/JclDeveloperTools.dpk
trunk/jcl/packages/cs1/JclDeveloperTools.bdsproj
trunk/jcl/packages/cs1/JclDeveloperTools.dpk
trunk/jcl/packages/d10/JclDeveloperTools.bdsproj
trunk/jcl/packages/d10/JclDeveloperTools.dpk
trunk/jcl/packages/d11/JclDeveloperTools.dpk
trunk/jcl/packages/d11/JclDeveloperTools.dproj
trunk/jcl/packages/d12/JclDeveloperTools.dpk
trunk/jcl/packages/d12/JclDeveloperTools.dproj
trunk/jcl/packages/d14/JclDeveloperTools.dpk
trunk/jcl/packages/d14/JclDeveloperTools.dproj
trunk/jcl/packages/d15/JclDeveloperTools.dpk
trunk/jcl/packages/d15/JclDeveloperTools.dproj
trunk/jcl/packages/d16/JclDeveloperTools.dpk
trunk/jcl/packages/d16/JclDeveloperTools.dproj
trunk/jcl/packages/d6/JclDeveloperTools.dpk
trunk/jcl/packages/d7/JclDeveloperTools.dpk
trunk/jcl/packages/d8/JclDeveloperTools.bdsproj
trunk/jcl/packages/d8/JclDeveloperTools.dpk
trunk/jcl/packages/d9/JclDeveloperTools.bdsproj
trunk/jcl/packages/d9/JclDeveloperTools.dpk
trunk/jcl/packages/xml/JclDeveloperTools-R.xml
trunk/jcl/source/common/JclPreProcessorExcDlgTemplates.pas
Modified: trunk/jcl/packages/c6/JclDeveloperTools.bpk
===================================================================
--- trunk/jcl/packages/c6/JclDeveloperTools.bpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/c6/JclDeveloperTools.bpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -5,7 +5,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:40 UTC
+ Last generated: 23-02-2012 21:07:35 UTC
*****************************************************************************
-->
<PROJECT>
@@ -57,7 +57,6 @@
<SPARELIBS value=""/>
<PACKAGES value="
rtl.bpi
- vcl.bpi
Jcl.bpi
JclContainers.bpi
"/>
@@ -97,7 +96,6 @@
<FILE FILENAME="JclDeveloperTools.res" FORMNAME="" UNITNAME="JclDeveloperTools.res" CONTAINERID="ResTool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="JclDeveloperTools.cpp" FORMNAME="" UNITNAME="JclDeveloperTools" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="rtl.bpi" FORMNAME="" UNITNAME="rtl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
- <FILE FILENAME="vcl.bpi" FORMNAME="" UNITNAME="vcl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="Jcl.bpi" FORMNAME="" UNITNAME="Jcl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="JclContainers.bpi" FORMNAME="" UNITNAME="JclContainers" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\common\JclCompilerUtils.pas" FORMNAME="" UNITNAME="JclCompilerUtils" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
Modified: trunk/jcl/packages/c6/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/c6/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/c6/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:40 UTC
+ Last generated: 23-02-2012 21:07:35 UTC
-----------------------------------------------------------------------------
}
@@ -43,7 +43,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/cs1/JclDeveloperTools.bdsproj
===================================================================
--- trunk/jcl/packages/cs1/JclDeveloperTools.bdsproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/cs1/JclDeveloperTools.bdsproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -122,7 +122,7 @@
<Directories Name="PackageDLLOutputDir"></Directories>
<Directories Name="PackageDCPOutputDir">..\..\lib\cs1</Directories>
<Directories Name="SearchPath">..\..\lib\cs1;..\..\source\include</Directories>
- <Directories Name="Packages">rtl;vcl;Jcl;JclContainers</Directories>
+ <Directories Name="Packages">rtl;Jcl;JclContainers</Directories>
<Directories Name="Conditionals">WIN32;CONDITIONALEXPRESSIONS;RELEASE</Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">True</Directories>
Modified: trunk/jcl/packages/cs1/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/cs1/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/cs1/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:41 UTC
+ Last generated: 23-02-2012 21:07:35 UTC
-----------------------------------------------------------------------------
}
@@ -41,7 +41,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d10/JclDeveloperTools.bdsproj
===================================================================
--- trunk/jcl/packages/d10/JclDeveloperTools.bdsproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d10/JclDeveloperTools.bdsproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -124,7 +124,7 @@
<Directories Name="OutputDir"></Directories>
<Directories Name="PackageDLLOutputDir"></Directories>
<Directories Name="PackageDCPOutputDir">..\..\lib\d10</Directories>
- <Directories Name="Packages">rtl;vcl;Jcl;JclContainers</Directories>
+ <Directories Name="Packages">rtl;Jcl;JclContainers</Directories>
<Directories Name="Conditionals">BCB;WIN32;CONDITIONALEXPRESSIONS;VER180;RELEASE</Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">True</Directories>
Modified: trunk/jcl/packages/d10/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d10/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d10/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:42 UTC
+ Last generated: 23-02-2012 21:07:36 UTC
-----------------------------------------------------------------------------
}
@@ -43,7 +43,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d11/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d11/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d11/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:42 UTC
+ Last generated: 23-02-2012 21:07:37 UTC
-----------------------------------------------------------------------------
}
@@ -44,7 +44,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d11/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d11/JclDeveloperTools.dproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d11/JclDeveloperTools.dproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -5,7 +5,7 @@
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
- <DCC_UsePackage>rtl;vcl;Jcl;JclContainers</DCC_UsePackage>
+ <DCC_UsePackage>rtl;Jcl;JclContainers</DCC_UsePackage>
<DCC_Define>BCB;WIN32;CONDITIONALEXPRESSIONS;VER180;VER185;RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
@@ -86,7 +86,6 @@
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
- <DCCReference Include="vcl.dcp"/>
<DCCReference Include="Jcl.dcp"/>
<DCCReference Include="JclContainers.dcp"/>
<DCCReference Include="..\..\source\common\JclCompilerUtils.pas"/>
Modified: trunk/jcl/packages/d12/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d12/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d12/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:43 UTC
+ Last generated: 23-02-2012 21:07:37 UTC
-----------------------------------------------------------------------------
}
@@ -43,7 +43,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d12/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d12/JclDeveloperTools.dproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d12/JclDeveloperTools.dproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -27,7 +27,7 @@
<GenDll>true</GenDll>
<GenPackage>true</GenPackage>
<DCC_ImageBase>$48380000</DCC_ImageBase>
- <DCC_UsePackage>rtl;vcl;Jcl;JclContainers</DCC_UsePackage>
+ <DCC_UsePackage>rtl;Jcl;JclContainers</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_Release)'!=''">
<DCC_AssertionsAtRuntime>false</DCC_AssertionsAtRuntime>
@@ -61,7 +61,6 @@
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
- <DCCReference Include="vcl.dcp"/>
<DCCReference Include="Jcl.dcp"/>
<DCCReference Include="JclContainers.dcp"/>
<DCCReference Include="..\..\source\common\JclCompilerUtils.pas"/>
Modified: trunk/jcl/packages/d14/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d14/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d14/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:43 UTC
+ Last generated: 23-02-2012 21:07:38 UTC
-----------------------------------------------------------------------------
}
@@ -43,7 +43,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d14/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d14/JclDeveloperTools.dproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d14/JclDeveloperTools.dproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -29,7 +29,7 @@
<GenDll>true</GenDll>
<GenPackage>true</GenPackage>
<DCC_ImageBase>$48380000</DCC_ImageBase>
- <DCC_UsePackage>rtl;vcl;Jcl;JclContainers</DCC_UsePackage>
+ <DCC_UsePackage>rtl;Jcl;JclContainers</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_Release)'!=''">
<DCC_AssertionsAtRuntime>false</DCC_AssertionsAtRuntime>
@@ -63,7 +63,6 @@
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
- <DCCReference Include="vcl.dcp"/>
<DCCReference Include="Jcl.dcp"/>
<DCCReference Include="JclContainers.dcp"/>
<DCCReference Include="..\..\source\common\JclCompilerUtils.pas"/>
Modified: trunk/jcl/packages/d15/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d15/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d15/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:43 UTC
+ Last generated: 23-02-2012 21:07:38 UTC
-----------------------------------------------------------------------------
}
@@ -42,7 +42,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d15/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d15/JclDeveloperTools.dproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d15/JclDeveloperTools.dproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -36,7 +36,7 @@
<GenDll>true</GenDll>
<GenPackage>true</GenPackage>
<DCC_ImageBase>$48380000</DCC_ImageBase>
- <DCC_UsePackage>rtl;vcl;Jcl;JclContainers</DCC_UsePackage>
+ <DCC_UsePackage>rtl;Jcl;JclContainers</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_Release)'!=''">
<DCC_AssertionsAtRuntime>false</DCC_AssertionsAtRuntime>
@@ -70,7 +70,6 @@
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
- <DCCReference Include="vcl.dcp"/>
<DCCReference Include="Jcl.dcp"/>
<DCCReference Include="JclContainers.dcp"/>
<DCCReference Include="..\..\source\common\JclCompilerUtils.pas"/>
Modified: trunk/jcl/packages/d16/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d16/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d16/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:44 UTC
+ Last generated: 23-02-2012 21:07:39 UTC
-----------------------------------------------------------------------------
}
@@ -42,7 +42,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d16/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d16/JclDeveloperTools.dproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d16/JclDeveloperTools.dproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -73,7 +73,7 @@
<GenDll>true</GenDll>
<GenPackage>true</GenPackage>
<DCC_ImageBase>$48380000</DCC_ImageBase>
- <DCC_UsePackage>rtl;vcl;Jcl;JclContainers;$(DCC_UsePackage)</DCC_UsePackage>
+ <DCC_UsePackage>rtl;Jcl;JclContainers;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
@@ -151,7 +151,6 @@
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
- <DCCReference Include="vcl.dcp"/>
<DCCReference Include="Jcl.dcp"/>
<DCCReference Include="JclContainers.dcp"/>
<DCCReference Include="..\..\source\common\JclCompilerUtils.pas"/>
Modified: trunk/jcl/packages/d6/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d6/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d6/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:40 UTC
+ Last generated: 23-02-2012 21:07:35 UTC
-----------------------------------------------------------------------------
}
@@ -42,7 +42,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d7/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d7/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d7/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:40 UTC
+ Last generated: 23-02-2012 21:07:35 UTC
-----------------------------------------------------------------------------
}
@@ -42,7 +42,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d8/JclDeveloperTools.bdsproj
===================================================================
--- trunk/jcl/packages/d8/JclDeveloperTools.bdsproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d8/JclDeveloperTools.bdsproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -122,7 +122,7 @@
<Directories Name="PackageDLLOutputDir"></Directories>
<Directories Name="PackageDCPOutputDir">..\..\lib\d8</Directories>
<Directories Name="SearchPath">..\..\lib\d8;..\..\source\include</Directories>
- <Directories Name="Packages">rtl;vcl;Jcl;JclContainers</Directories>
+ <Directories Name="Packages">rtl;Jcl;JclContainers</Directories>
<Directories Name="Conditionals">WIN32;CONDITIONALEXPRESSIONS;RELEASE</Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">True</Directories>
Modified: trunk/jcl/packages/d8/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d8/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d8/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:41 UTC
+ Last generated: 23-02-2012 21:07:35 UTC
-----------------------------------------------------------------------------
}
@@ -41,7 +41,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/d9/JclDeveloperTools.bdsproj
===================================================================
--- trunk/jcl/packages/d9/JclDeveloperTools.bdsproj 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d9/JclDeveloperTools.bdsproj 2012-02-23 21:12:12 UTC (rev 3741)
@@ -122,7 +122,7 @@
<Directories Name="PackageDLLOutputDir"></Directories>
<Directories Name="PackageDCPOutputDir">..\..\lib\d9</Directories>
<Directories Name="SearchPath">..\..\lib\d9;..\..\source\include</Directories>
- <Directories Name="Packages">rtl;vcl;Jcl;JclContainers</Directories>
+ <Directories Name="Packages">rtl;Jcl;JclContainers</Directories>
<Directories Name="Conditionals">WIN32;CONDITIONALEXPRESSIONS;VER170;RELEASE</Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">True</Directories>
Modified: trunk/jcl/packages/d9/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d9/JclDeveloperTools.dpk 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/d9/JclDeveloperTools.dpk 2012-02-23 21:12:12 UTC (rev 3741)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-02-2012 19:42:41 UTC
+ Last generated: 23-02-2012 21:07:36 UTC
-----------------------------------------------------------------------------
}
@@ -42,7 +42,6 @@
requires
rtl,
- vcl,
Jcl,
JclContainers
;
Modified: trunk/jcl/packages/xml/JclDeveloperTools-R.xml
===================================================================
--- trunk/jcl/packages/xml/JclDeveloperTools-R.xml 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/packages/xml/JclDeveloperTools-R.xml 2012-02-23 21:12:12 UTC (rev 3741)
@@ -10,7 +10,6 @@
<ImageBase>48380000</ImageBase>
<Requires>
<Package Name="rtl" Targets="Delphi,Bcb,Bds" Condition=""/>
- <Package Name="vcl" Targets="Delphi,Bcb,Bds" Condition=""/>
<Package Name="FCL" Targets="fpc" Condition=""/>
<Package Name="..\..\..\help\VCL" Targets="help" Condition=""/>
<Package Name="..\..\..\help\JEDI" Targets="help" Condition=""/>
Modified: trunk/jcl/source/common/JclPreProcessorExcDlgTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorExcDlgTemplates.pas 2012-02-23 20:46:07 UTC (rev 3740)
+++ trunk/jcl/source/common/JclPreProcessorExcDlgTemplates.pas 2012-02-23 21:12:12 UTC (rev 3741)
@@ -34,9 +34,9 @@
uses
{$IFDEF HAS_UNITSCOPE}
- System.Classes, Vcl.Forms,
+ System.Classes,
{$ELSE ~HAS_UNITSCOPE}
- Classes, Forms,
+ Classes,
{$ENDIF ~HAS_UNITSCOPE}
{$IFDEF UNITVERSIONING}
JclUnitVersioning,
@@ -188,7 +188,7 @@
FModuleOffset := False;
FDelayedTrace := True;
FFormName := 'ExceptionDialog';
- FFormAncestor := TForm.ClassName;
+ FFormAncestor := 'TForm';
FLogFile := False;
FLogFileName := 'ExtractFileName(Application.ExeName) + ''-exception-'' + FormatDateTime(''yyyy-mm-dd'', Date) + ''.log''';
FAutoSaveWorkingDirectory := False;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-23 20:46:15
|
Revision: 3740
http://jcl.svn.sourceforge.net/jcl/?rev=3740&view=rev
Author: outchy
Date: 2012-02-23 20:46:07 +0000 (Thu, 23 Feb 2012)
Log Message:
-----------
Add explicit dependency on MoveArray functions in JclArrayLists, JclHashSets, JclQueues and JclVectors templates.
Reuse MoveArray template in JclArrayLists, JclHashSets, JclQueues and JclVectors.
Modified Paths:
--------------
trunk/jcl/source/common/JclAlgorithms.pas
trunk/jcl/source/common/JclArrayLists.pas
trunk/jcl/source/common/JclHashSets.pas
trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas
trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas
trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas
trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas
trunk/jcl/source/common/JclQueues.pas
trunk/jcl/source/common/JclVectors.pas
trunk/jcl/source/prototypes/JclAlgorithms.pas
trunk/jcl/source/prototypes/JclArrayLists.pas
trunk/jcl/source/prototypes/JclHashSets.pas
trunk/jcl/source/prototypes/JclQueues.pas
trunk/jcl/source/prototypes/JclVectors.pas
trunk/jcl/source/prototypes/Makefile.mak
trunk/jcl/source/prototypes/containers/JclAlgorithms.imp
trunk/jcl/source/prototypes/containers/JclArrayLists.imp
trunk/jcl/source/prototypes/containers/JclHashSets.imp
trunk/jcl/source/prototypes/containers/JclQueues.imp
trunk/jcl/source/prototypes/containers/JclVectors.imp
Modified: trunk/jcl/source/common/JclAlgorithms.pas
===================================================================
--- trunk/jcl/source/common/JclAlgorithms.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclAlgorithms.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1319,6 +1319,7 @@
end;
{$IFDEF SUPPORTS_UNICODE_STRING}
+
procedure FinalizeArrayBeforeMove(var List: TDynUnicodeStringArray; FromIndex, ToIndex, Count: SizeInt); overload;
{$IFDEF SUPPORTS_INLINE} inline; {$ENDIF}
begin
Modified: trunk/jcl/source/common/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/common/JclArrayLists.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclArrayLists.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1086,7 +1086,7 @@
type
TDynArray = array of T;
TArrayIterator = TJclArrayIterator<T>;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
private
FElementData: TDynArray;
// fix ambiguous warnings when compiled on Delphi.net and earlier versions of Delphi.win32
@@ -11916,9 +11916,9 @@
FOwnList.SetItem(FCursor, AItem);
end;
-procedure TJclArrayList<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+procedure TJclArrayList<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
var
- I: Integer;
+ I: SizeInt;
begin
if FromIndex < ToIndex then
begin
Modified: trunk/jcl/source/common/JclHashSets.pas
===================================================================
--- trunk/jcl/source/common/JclHashSets.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclHashSets.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1107,7 +1107,7 @@
public
Size: Integer;
Entries: TDynArray;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
end;
TJclHashSet<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
@@ -13019,9 +13019,9 @@
//=== { TJclHashSetBucket<T> } =================================================
-procedure TJclHashSetBucket<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+procedure TJclHashSetBucket<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
var
- I: Integer;
+ I: SizeInt;
begin
if FromIndex < ToIndex then
begin
Modified: trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -66,11 +66,12 @@
property DynArrayTypeName: string index taDynArrayTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* MOVEARRAYIMP(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME) *)
+ (* MOVEARRAYIMP(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME, DEFAULTVALUE) *)
TJclMoveArrayImpParams = class(TJclAlgorithmsImpProcParams)
published
property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property DynArrayTypeName: string index taDynArrayTypeName read GetTypeAttribute write SetTypeAttribute stored False;
+ property DefaultValue: string index taDefaultValue read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* ITERATEINT(ITERATEPROCEDURENAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME, OVERLOAD) *)
Modified: trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -92,7 +92,8 @@
end;
(* JCLARRAYLISTIMP(SELFCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, COLLECTIONINTERFACENAME,
- ITRINTERFACENAME, ITRCLASSNAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, GETTERFUNCTIONNAME,
+ ITRINTERFACENAME, ITRCLASSNAME, LISTINTERFACENAME, MOVEARRAYPROCEDURENAME,
+ CONSTKEYWORD, PARAMETERNAME, GETTERFUNCTIONNAME,
SETTERPROCEDURENAME, RELEASERFUNCTIONNAME, TYPENAME, DEFAULTVALUE) *)
TJclArrayListImpParams = class(TJclCollectionImplementationParams)
protected
@@ -108,6 +109,7 @@
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrClassName: string index taArrayIteratorClassName read GetTypeAttribute write SetTypeAttribute stored False;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
+ property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
Modified: trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -43,7 +43,7 @@
({taTypeName} 'IInterface',
{taCondition} '',
{taDefines} 'REFCOUNTED',
- {taUndefs} '',
+ {taUndefs} 'GENERIC',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} 'nil',
@@ -143,7 +143,7 @@
({taTypeName} 'AnsiString',
{taCondition} '',
{taDefines} 'REFCOUNTED',
- {taUndefs} '',
+ {taUndefs} 'GENERIC',
{taAlias} 'string',
{taAliasCondition} 'CONTAINER_ANSISTR',
{taDefaultValue} '''''',
@@ -243,7 +243,7 @@
({taTypeName} 'WideString',
{taCondition} '',
{taDefines} 'REFCOUNTED',
- {taUndefs} '',
+ {taUndefs} 'GENERIC',
{taAlias} 'string',
{taAliasCondition} 'CONTAINER_WIDESTR',
{taDefaultValue} '''''',
@@ -343,7 +343,7 @@
({taTypeName} 'UnicodeString',
{taCondition} 'SUPPORTS_UNICODE_STRING',
{taDefines} 'REFCOUNTED',
- {taUndefs} '',
+ {taUndefs} 'GENERIC',
{taAlias} 'string',
{taAliasCondition} 'CONTAINER_UNICODESTR',
{taDefaultValue} '''''',
@@ -443,7 +443,7 @@
({taTypeName} 'string',
{taCondition} '',
{taDefines} 'REFCOUNTED',
- {taUndefs} '',
+ {taUndefs} 'GENERIC',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} '''''',
@@ -543,7 +543,7 @@
({taTypeName} 'Single',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} 'Float',
{taAliasCondition} 'MATH_SINGLE_PRECISION',
{taDefaultValue} '0.0',
@@ -643,7 +643,7 @@
({taTypeName} 'Double',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} 'Float',
{taAliasCondition} 'MATH_DOUBLE_PRECISION',
{taDefaultValue} '0.0',
@@ -743,7 +743,7 @@
({taTypeName} 'Extended',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} 'Float',
{taAliasCondition} 'MATH_EXTENDED_PRECISION',
{taDefaultValue} '0.0',
@@ -843,7 +843,7 @@
({taTypeName} 'Float',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} '0.0',
@@ -943,7 +943,7 @@
({taTypeName} 'Integer',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} '0',
@@ -1043,7 +1043,7 @@
({taTypeName} 'Cardinal',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} '0',
@@ -1143,7 +1143,7 @@
({taTypeName} 'Int64',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} '0',
@@ -1243,7 +1243,7 @@
({taTypeName} 'Pointer',
{taCondition} '',
{taDefines} 'ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} 'nil',
@@ -1343,7 +1343,7 @@
({taTypeName} 'TObject',
{taCondition} '',
{taDefines} 'OWNABLE;ZEROINIT',
- {taUndefs} 'REFCOUNTED',
+ {taUndefs} 'GENERIC;REFCOUNTED',
{taAlias} '',
{taAliasCondition} '',
{taDefaultValue} 'nil',
Modified: trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -101,7 +101,7 @@
end;
(* JCLHASHSETIMP(SELFCLASSNAME, BUCKETTYPENAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME,
- COLLECTIONINTERFACENAME, ITRCLASSNAME, ITRINTERFACENAME,
+ COLLECTIONINTERFACENAME, ITRCLASSNAME, ITRINTERFACENAME, MOVEARRAYPROCEDURENAME,
CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE, RELEASERFUNCTIONNAME) *)
TJclHashSetImpParams = class(TJclCollectionImplementationParams)
protected
@@ -117,6 +117,7 @@
property CollectionInterfaceName: string index taCollectionInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrClassName: string index taHashSetIteratorClassName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
+ property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
Modified: trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -64,7 +64,7 @@
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* JCLQUEUEIMP(SELFCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME,
+ (* JCLQUEUEIMP(SELFCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, MOVEARRAYPROCEDURENAME,
CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE, RELEASERFUNCTIONNAME) *)
TJclQueueImpParams = class(TJclClassImplementationParams)
protected
@@ -76,6 +76,7 @@
property SelfClassName: string index taQueueClassName read GetTypeAttribute write SetTypeAttribute stored False;
property OwnershipDeclaration;
property OwnershipParameterName: string index taOwnershipParameterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
Modified: trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -92,8 +92,9 @@
end;
(* JCLVECTORIMP(SELFCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME, ITRINTERFACENAME,
- ITRCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, CONSTKEYWORD,
- PARAMETERNAME, TYPENAME, DEFAULTVALUE, GETTERFUNCTIONNAME, SETTERPROCEDURENAME, RELEASERFUNCTIONNAME) *)
+ ITRCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, MOVEARRAYPROCEDURENAME,
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE,
+ GETTERFUNCTIONNAME, SETTERPROCEDURENAME, RELEASERFUNCTIONNAME) *)
TJclVectorImpParams = class(TJclCollectionImplementationParams)
protected
// function CodeUnit: string; override;
@@ -108,6 +109,7 @@
property ItrClassName: string index taVectorIteratorClassName read GetTypeAttribute write SetTypeAttribute stored False;
property OwnershipDeclaration;
property OwnershipParameterName: string index taOwnershipParameterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
Modified: trunk/jcl/source/common/JclQueues.pas
===================================================================
--- trunk/jcl/source/common/JclQueues.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclQueues.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -419,7 +419,7 @@
protected
type
TDynArray = array of T;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
private
FElements: TDynArray;
FHead: Integer;
@@ -4180,9 +4180,9 @@
{$ENDIF THREADSAFE}
end;
-procedure TJclQueue<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+procedure TJclQueue<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
var
- I: Integer;
+ I: SizeInt;
begin
if FromIndex < ToIndex then
begin
Modified: trunk/jcl/source/common/JclVectors.pas
===================================================================
--- trunk/jcl/source/common/JclVectors.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/common/JclVectors.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1112,7 +1112,7 @@
type
TDynArray = array of T;
TVectorIterator = TJclVectorIterator<T>;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
private
FItems: TDynArray;
protected
@@ -11875,9 +11875,9 @@
FOwnList.SetItem(FCursor, AItem);
end;
-procedure TJclVector<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+procedure TJclVector<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: SizeInt);
var
- I: Integer;
+ I: SizeInt;
begin
if FromIndex < ToIndex then
begin
Modified: trunk/jcl/source/prototypes/JclAlgorithms.pas
===================================================================
--- trunk/jcl/source/prototypes/JclAlgorithms.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/JclAlgorithms.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -857,15 +857,15 @@
end;
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO MOVEARRAYIMP(,)}
+{$JPPEXPANDMACRO MOVEARRAYIMP(,,)}
*)
-{$JPPUNDEF REFCOUNTED}{$JPPDEFINE ZEROINIT}{$JPPEXPANDMACRO MOVEARRAYIMP(MoveArray,TDynSizeIntArray)}
+{$JPPUNDEF GENERIC}{$JPPUNDEF REFCOUNTED}{$JPPDEFINE ZEROINIT}{$JPPEXPANDMACRO MOVEARRAYIMP(MoveArray,TDynSizeIntArray,)}
{$IFNDEF FPC}
-{$JPPDEFINE REFCOUNTED}{$JPPUNDEF ZEROINIT}{$JPPEXPANDMACRO MOVEARRAYIMP(MoveArray,TDynStringArray)}
+{$JPPUNDEF GENERIC}{$JPPDEFINE REFCOUNTED}{$JPPUNDEF ZEROINIT}{$JPPEXPANDMACRO MOVEARRAYIMP(MoveArray,TDynStringArray,)}
-{$JPPUNDEF REFCOUNTED}{$JPPDEFINE ZEROINIT}{$JPPEXPANDMACRO MOVEARRAYIMP(MoveArray,TDynFloatArray)}
+{$JPPUNDEF GENERIC}{$JPPUNDEF REFCOUNTED}{$JPPDEFINE ZEROINIT}{$JPPEXPANDMACRO MOVEARRAYIMP(MoveArray,TDynFloatArray,)}
{$ENDIF ~FPC}
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
Modified: trunk/jcl/source/prototypes/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/prototypes/JclArrayLists.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/JclArrayLists.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -51,6 +51,8 @@
{$I containers\JclContainerCommon.imp}
{$I containers\JclArrayLists.int}
{$I containers\JclArrayLists.imp}
+{$I containers\JclAlgorithms.int}
+{$I containers\JclAlgorithms.imp}
type
TItrStart = (isFirst, isLast);
@@ -65,12 +67,12 @@
TJclArrayIterator<T> = class;
- {$JPPEXPANDMACRO JCLARRAYLISTINT(TJclArrayList<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLARRAYLISTINT(TJclArrayList<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
TDynArray = array of T;
TArrayIterator = TJclArrayIterator<T>;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);,,; AOwnsItems: Boolean,const ,AItem,T,GetItem,SetItem)}
+ {$JPPEXPANDMACRO MOVEARRAYINT(MoveArray,TDynArray,)},,; AOwnsItems: Boolean,const ,AItem,T,GetItem,SetItem)*)
{$JPPEXPANDMACRO JCLARRAYLISTITRINT(TJclArrayIterator<T>,IJclIterator<T>,IJclList<T>,const ,AItem,T,GetItem,SetItem)}
@@ -139,7 +141,7 @@
{$ENDIF}
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO JCLARRAYLISTIMP(,,,,,,,,,,,,,)}
+{$JPPEXPANDMACRO JCLARRAYLISTIMP(,,,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLARRAYLISTITRIMP(,,,,,,,)}
@@ -147,44 +149,12 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
-{$JPPEXPANDMACRO JCLARRAYLISTIMP(TJclArrayList<T>,; AOwnsItems: Boolean,AOwnsItems,IJclCollection<T>,IJclIterator<T>,TArrayIterator,IJclList<T>,const ,AItem,GetItem,SetItem,FreeItem,T,Default(T))}
+{$JPPEXPANDMACRO JCLARRAYLISTIMP(TJclArrayList<T>,; AOwnsItems: Boolean,AOwnsItems,IJclCollection<T>,IJclIterator<T>,TArrayIterator,IJclList<T>,MoveArray,const ,AItem,GetItem,SetItem,FreeItem,T,Default(T))}
{$JPPEXPANDMACRO JCLARRAYLISTITRIMP(TJclArrayIterator<T>,IJclIterator<T>,IJclList<T>,const ,AItem,T,GetItem,SetItem)}
-procedure TJclArrayList<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
-var
- I: Integer;
-begin
- if FromIndex < ToIndex then
- begin
- for I := Count - 1 downto 0 do
- List[ToIndex + I] := List[FromIndex + I];
+{$JPPDEFINE GENERIC}{$JPPEXPANDMACRO MOVEARRAYIMP(TJclArrayList<T>.MoveArray,TDynArray,Default(T))}
- if (ToIndex - FromIndex) < Count then
- // overlapped source and target
- for I := 0 to ToIndex - FromIndex - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end
- else
- begin
- for I := 0 to Count - 1 do
- List[ToIndex + I] := List[FromIndex + I];
-
- if (FromIndex - ToIndex) < Count then
- // overlapped source and target
- for I := Count - FromIndex + ToIndex to Count - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end;
-end;
-
//=== { TJclArrayListE<T> } ==================================================
constructor TJclArrayListE<T>.Create(const AEqualityComparer: IJclEqualityComparer<T>; ACapacity: Integer;
Modified: trunk/jcl/source/prototypes/JclHashSets.pas
===================================================================
--- trunk/jcl/source/prototypes/JclHashSets.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/JclHashSets.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -51,6 +51,8 @@
{$I containers\JclContainerCommon.imp}
{$I containers\JclHashSets.imp}
{$I containers\JclHashSets.int}
+{$I containers\JclAlgorithms.int}
+{$I containers\JclAlgorithms.imp}
type
TItrStart = (isFirst, isLast);
@@ -72,7 +74,7 @@
public
Size: Integer;
Entries: TDynArray;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ {$JPPEXPANDMACRO MOVEARRAYINT(MoveArray,TDynArray,)}
end;
{$JPPEXPANDMACRO JCLHASHSETINT(TJclHashSet<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,TJclHashSetBucket<T>,IJclCollection<T>,IJclSet<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclHashConverter<T>, IJclItemOwner<T>\,,,,const ,AItem,T,; AOwnsItems: Boolean)}
@@ -153,42 +155,10 @@
//=== { TJclHashSetBucket<T> } =================================================
-procedure TJclHashSetBucket<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
-var
- I: Integer;
-begin
- if FromIndex < ToIndex then
- begin
- for I := Count - 1 downto 0 do
- List[ToIndex + I] := List[FromIndex + I];
+{$JPPDEFINE GENERIC}{$JPPEXPANDMACRO MOVEARRAYIMP(TJclHashSetBucket<T>.MoveArray,TDynArray,Default(T))}
- if (ToIndex - FromIndex) < Count then
- // overlapped source and target
- for I := 0 to ToIndex - FromIndex - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end
- else
- begin
- for I := 0 to Count - 1 do
- List[ToIndex + I] := List[FromIndex + I];
+{$JPPEXPANDMACRO JCLHASHSETIMP(TJclHashSet<T>,TJclHashSetBucket<T>,; AOwnsItems: Boolean,AOwnsItems,IJclCollection<T>,TJclHashSetIterator<T>,IJclIterator<T>,Bucket.MoveArray,const ,AItem,T,Default(T),FreeItem)}
- if (FromIndex - ToIndex) < Count then
- // overlapped source and target
- for I := Count - FromIndex + ToIndex to Count - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end;
-end;
-
-{$JPPEXPANDMACRO JCLHASHSETIMP(TJclHashSet<T>,TJclHashSetBucket<T>,; AOwnsItems: Boolean,AOwnsItems,IJclCollection<T>,TJclHashSetIterator<T>,IJclIterator<T>,Bucket.,const ,AItem,T,Default(T),FreeItem)}
-
{$JPPEXPANDMACRO JCLHASHSETITRIMP(TJclHashSetIterator<T>,TJclHashSet<T>,TJclHashSetBucket<T>,IJclIterator<T>,const ,AItem,T,Default(T),GetItem,SetItem)}
//=== { TJclHashSetE<T> } ====================================================
Modified: trunk/jcl/source/prototypes/JclQueues.pas
===================================================================
--- trunk/jcl/source/prototypes/JclQueues.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/JclQueues.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -46,6 +46,8 @@
{$I containers\JclContainerCommon.imp}
{$I containers\JclQueues.imp}
{$I containers\JclQueues.int}
+{$I containers\JclAlgorithms.int}
+{$I containers\JclAlgorithms.imp}
type
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
{$JPPEXPANDMACRO JCLQUEUEINT(,,,,,,,,,,,)}
@@ -58,7 +60,7 @@
protected
type
TDynArray = array of T;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);,; AOwnsItems: Boolean,const ,AItem,T)*)
+ {$JPPEXPANDMACRO MOVEARRAYINT(MoveArray,TDynArray,)},; AOwnsItems: Boolean,const ,AItem,T)*)
// E = external helper to compare items for equality (GetHashCode is not used)
TJclQueueE<T> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
@@ -119,48 +121,16 @@
{$ENDIF ~HAS_UNITSCOPE}
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO JCLQUEUEIMP(,,,,,,,)}
+{$JPPEXPANDMACRO JCLQUEUEIMP(,,,,,,,,)}
*)
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
-(*$JPPEXPANDMACRO JCLQUEUEIMP(TJclQueue<T>,; AOwnsItems: Boolean,AOwnsItems,const ,AItem,T,Default(T),FreeItem)*)
+(*$JPPEXPANDMACRO JCLQUEUEIMP(TJclQueue<T>,; AOwnsItems: Boolean,AOwnsItems,MoveArray,const ,AItem,T,Default(T),FreeItem)*)
-procedure TJclQueue<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
-var
- I: Integer;
-begin
- if FromIndex < ToIndex then
- begin
- for I := Count - 1 downto 0 do
- List[ToIndex + I] := List[FromIndex + I];
+{$JPPDEFINE GENERIC}{$JPPEXPANDMACRO MOVEARRAYIMP(TJclQueue<T>.MoveArray,TDynArray,Default(T))}
- if (ToIndex - FromIndex) < Count then
- // overlapped source and target
- for I := 0 to ToIndex - FromIndex - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end
- else
- begin
- for I := 0 to Count - 1 do
- List[ToIndex + I] := List[FromIndex + I];
-
- if (FromIndex - ToIndex) < Count then
- // overlapped source and target
- for I := Count - FromIndex + ToIndex to Count - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end;
-end;
-
//=== { TJclQueueE<T> } ======================================================
constructor TJclQueueE<T>.Create(const AEqualityComparer: IEqualityComparer<T>;
Modified: trunk/jcl/source/prototypes/JclVectors.pas
===================================================================
--- trunk/jcl/source/prototypes/JclVectors.pas 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/JclVectors.pas 2012-02-23 20:46:07 UTC (rev 3740)
@@ -53,6 +53,8 @@
{$I containers\JclContainerCommon.imp}
{$I containers\JclVectors.imp}
{$I containers\JclVectors.int}
+{$I containers\JclAlgorithms.int}
+{$I containers\JclAlgorithms.imp}
type
TItrStart = (isFirst, isLast);
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
@@ -71,7 +73,7 @@
type
TDynArray = array of T;
TVectorIterator = TJclVectorIterator<T>;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);,,; AOwnsItems: Boolean,const ,AItem,T,TDynArray,GetItem,SetItem)*)
+ {$JPPEXPANDMACRO MOVEARRAYINT(MoveArray,TDynArray,)},,; AOwnsItems: Boolean,const ,AItem,T,TDynArray,GetItem,SetItem)*)
(*$JPPEXPANDMACRO JCLVECTORITRINT(TJclVectorIterator<T>,IJclIterator<T>,IJclList<T>,const ,AItem,T,GetItem,SetItem)*)
@@ -137,7 +139,7 @@
{$ENDIF ~HAS_UNITSCOPE}
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO JCLVECTORIMP(,,,,,,,,,,,,,)}
+{$JPPEXPANDMACRO JCLVECTORIMP(,,,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLVECTORITRIMP(,,,,,,,)}
@@ -145,44 +147,12 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
-(*$JPPEXPANDMACRO JCLVECTORIMP(TJclVector<T>,IJclCollection<T>,IJclList<T>,IJclIterator<T>,TVectorIterator,; AOwnsItems: Boolean,AOwnsItems,const ,AItem,T,Default(T),GetItem,SetItem,FreeItem)*)
+(*$JPPEXPANDMACRO JCLVECTORIMP(TJclVector<T>,IJclCollection<T>,IJclList<T>,IJclIterator<T>,TVectorIterator,; AOwnsItems: Boolean,AOwnsItems,MoveArray,const ,AItem,T,Default(T),GetItem,SetItem,FreeItem)*)
(*$JPPEXPANDMACRO JCLVECTORITRIMP(TJclVectorIterator<T>,IJclIterator<T>,IJclList<T>,const ,AItem,T,GetItem,SetItem)*)
-procedure TJclVector<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
-var
- I: Integer;
-begin
- if FromIndex < ToIndex then
- begin
- for I := Count - 1 downto 0 do
- List[ToIndex + I] := List[FromIndex + I];
+{$JPPDEFINE GENERIC}{$JPPEXPANDMACRO MOVEARRAYIMP(TJclVector<T>.MoveArray,TDynArray,Default(T))}
- if (ToIndex - FromIndex) < Count then
- // overlapped source and target
- for I := 0 to ToIndex - FromIndex - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end
- else
- begin
- for I := 0 to Count - 1 do
- List[ToIndex + I] := List[FromIndex + I];
-
- if (FromIndex - ToIndex) < Count then
- // overlapped source and target
- for I := Count - FromIndex + ToIndex to Count - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end;
-end;
-
//=== { TJclVectorE<T> } =====================================================
constructor TJclVectorE<T>.Create(const AEqualityComparer: IJclEqualityComparer<T>; ACapacity: Integer;
Modified: trunk/jcl/source/prototypes/Makefile.mak
===================================================================
--- trunk/jcl/source/prototypes/Makefile.mak 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/Makefile.mak 2012-02-23 20:46:07 UTC (rev 3740)
@@ -61,7 +61,7 @@
$(touch) $@
JclArrayLists.pas: \
- containers\JclArrayLists.imp containers\JclArrayLists.int containers\JclContainerCommon.imp
+ containers\JclArrayLists.imp containers\JclArrayLists.int containers\JclContainerCommon.imp containers\JclAlgorithms.int containers\JclAlgorithms.imp
$(touch) $@
JclArraySets.pas: \
@@ -77,11 +77,11 @@
$(touch) $@
JclHashMaps.pas: \
- containers\JclHashMaps.imp containers\JclHashMaps.int containers\JclContainerCommon.imp
+ containers\JclHashMaps.imp containers\JclHashMaps.int containers\JclContainerCommon.imp containers\JclAlgorithms.int containers\JclAlgorithms.imp
$(touch) $@
JclHashSets.pas: \
- containers\JclHashSets.imp containers\JclHashSets.int containers\JclContainerCommon.imp
+ containers\JclHashSets.imp containers\JclHashSets.int containers\JclContainerCommon.imp containers\JclAlgorithms.int containers\JclAlgorithms.imp
$(touch) $@
JclLinkedLists.pas: \
@@ -89,11 +89,11 @@
$(touch) $@
JclQueues.pas: \
- containers\JclQueues.imp containers\JclQueues.int containers\JclContainerCommon.imp
+ containers\JclQueues.imp containers\JclQueues.int containers\JclContainerCommon.imp containers\JclAlgorithms.int containers\JclAlgorithms.imp
$(touch) $@
JclSortedMaps.pas: \
- containers\JclSortedMaps.imp containers\JclSortedMaps.int containers\JclContainerCommon.imp
+ containers\JclSortedMaps.imp containers\JclSortedMaps.int containers\JclContainerCommon.imp containers\JclAlgorithms.int containers\JclAlgorithms.imp
$(touch) $@
JclStacks.pas: \
@@ -105,7 +105,7 @@
$(touch) $@
JclVectors.pas: \
- containers\JclVectors.imp containers\JclVectors.int containers\JclContainerCommon.imp
+ containers\JclVectors.imp containers\JclVectors.int containers\JclContainerCommon.imp containers\JclAlgorithms.int containers\JclAlgorithms.imp
$(touch) $@
{.}.pas{..\common}.pas:
Modified: trunk/jcl/source/prototypes/containers/JclAlgorithms.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclAlgorithms.imp 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/containers/JclAlgorithms.imp 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1,4 +1,39 @@
-(*$JPPDEFINEMACRO MOVEARRAYIMP(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME)
+(*$JPPDEFINEMACRO MOVEARRAYIMP(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME, DEFAULTVALUE)
+{$IFDEF GENERIC}
+procedure MOVEARRAYPROCEDURENAME(var List: DYNARRAYTYPENAME; FromIndex, ToIndex, Count: SizeInt);
+var
+ I: SizeInt;
+begin
+ if FromIndex < ToIndex then
+ begin
+ for I := Count - 1 downto 0 do
+ List[ToIndex + I] := List[FromIndex + I];
+
+ if (ToIndex - FromIndex) < Count then
+ // overlapped source and target
+ for I := 0 to ToIndex - FromIndex - 1 do
+ List[FromIndex + I] := DEFAULTVALUE
+ else
+ // independant
+ for I := 0 to Count - 1 do
+ List[FromIndex + I] := DEFAULTVALUE;
+ end
+ else
+ begin
+ for I := 0 to Count - 1 do
+ List[ToIndex + I] := List[FromIndex + I];
+
+ if (FromIndex - ToIndex) < Count then
+ // overlapped source and target
+ for I := Count - FromIndex + ToIndex to Count - 1 do
+ List[FromIndex + I] := DEFAULTVALUE
+ else
+ // independant
+ for I := 0 to Count - 1 do
+ List[FromIndex + I] := DEFAULTVALUE;
+ end;
+end;
+{$ELSE ~GENERIC}
{$IFDEF REFCOUNTED}
procedure FinalizeArrayBeforeMove(var List: DYNARRAYTYPENAME; FromIndex, ToIndex, Count: SizeInt); overload;
{$IFDEF SUPPORTS_INLINE} inline; {$ENDIF}
@@ -87,7 +122,7 @@
{$IFDEF REFCOUNTED} InitializeArrayAfterMove(List, FromIndex, ToIndex, Count);
{$ELSE ~REFCOUNTED}{$IFDEF ZEROINIT} InitializeArrayAfterMove(List, FromIndex, ToIndex, Count);{$ENDIF ZEROINIT}{$ENDIF ~REFCOUNTED}
end;
-end;*)
+end;{$ENDIF ~GENERIC}*)
(*$JPPDEFINEMACRO ITERATEIMP(ITERATEPROCEDURENAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME)
procedure ITERATEPROCEDURENAME(const First: ITRINTERFACENAME; Count: Integer; F: ITERATEPROCEDURETYPENAME);
var
Modified: trunk/jcl/source/prototypes/containers/JclArrayLists.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclArrayLists.imp 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/containers/JclArrayLists.imp 2012-02-23 20:46:07 UTC (rev 3740)
@@ -154,7 +154,7 @@
FOwnList.SETTERPROCEDURENAME(FCursor, PARAMETERNAME);
end;*)
(*$JPPDEFINEMACRO JCLARRAYLISTIMP(SELFCLASSNAME,
- OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, COLLECTIONINTERFACENAME, ITRINTERFACENAME, ITRCLASSNAME, LISTINTERFACENAME,
+ OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, COLLECTIONINTERFACENAME, ITRINTERFACENAME, ITRCLASSNAME, LISTINTERFACENAME, MOVEARRAYPROCEDURENAME,
CONSTKEYWORD, PARAMETERNAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME, RELEASERFUNCTIONNAME, TYPENAME, DEFAULTVALUE)
//=== { SELFCLASSNAME } ======================================================
@@ -326,7 +326,7 @@
if ItemsEqual(FElementData[I], PARAMETERNAME) then
begin
if I < (FSize - 1) then
- MoveArray(FElementData, I + 1, I, FSize - 1 - I)
+ MOVEARRAYPROCEDURENAME(FElementData, I + 1, I, FSize - 1 - I)
else
FElementData[I] := DEFAULTVALUE;
Dec(FSize);
@@ -360,7 +360,7 @@
begin
Result := FElementData[Index];
if Index < (FSize - 1) then
- MoveArray(FElementData, Index + 1, Index, FSize - 1 - Index)
+ MOVEARRAYPROCEDURENAME(FElementData, Index + 1, Index, FSize - 1 - Index)
else
FElementData[Index] := DEFAULTVALUE;
Dec(FSize);
@@ -438,7 +438,7 @@
if Result then
begin
if Index < FSize then
- MoveArray(FElementData, Index, Index + 1, FSize - Index);
+ MOVEARRAYPROCEDURENAME(FElementData, Index, Index + 1, FSize - Index);
FElementData[Index] := PARAMETERNAME;
Inc(FSize);
end;
Modified: trunk/jcl/source/prototypes/containers/JclHashSets.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclHashSets.imp 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/containers/JclHashSets.imp 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1,5 +1,5 @@
(*$JPPDEFINEMACRO JCLHASHSETIMP(SELFCLASSNAME, BUCKETTYPENAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME,
- COLLECTIONINTERFACENAME, ITRCLASSNAME, ITRINTERFACENAME, MOVEARRAYPREFIX,
+ COLLECTIONINTERFACENAME, ITRCLASSNAME, ITRINTERFACENAME, MOVEARRAYPROCEDURENAME,
CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE, RELEASERFUNCTIONNAME)
//=== { SELFCLASSNAME } ====================================================
@@ -207,7 +207,7 @@
Result := True;
Bucket.Entries[I] := DEFAULTVALUE;
if I < Length(Bucket.Entries) - 1 then
- MOVEARRAYPREFIXMoveArray(Bucket.Entries, I + 1, I, Bucket.Size - I - 1);
+ MOVEARRAYPROCEDURENAME(Bucket.Entries, I + 1, I, Bucket.Size - I - 1);
Dec(Bucket.Size);
Dec(FSize);
Break;
@@ -367,7 +367,7 @@
begin
Bucket.Entries[J] := RELEASERFUNCTIONNAME(Bucket.Entries[J]);
if J < Length(Bucket.Entries) - 1 then
- MOVEARRAYPREFIXMoveArray(Bucket.Entries, J + 1, J, Bucket.Size - J - 1);
+ MOVEARRAYPROCEDURENAME(Bucket.Entries, J + 1, J, Bucket.Size - J - 1);
Dec(Bucket.Size);
Dec(FSize);
end;
Modified: trunk/jcl/source/prototypes/containers/JclQueues.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclQueues.imp 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/containers/JclQueues.imp 2012-02-23 20:46:07 UTC (rev 3740)
@@ -1,5 +1,5 @@
(*$JPPDEFINEMACRO JCLQUEUEIMP(SELFCLASSNAME,
- OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE, RELEASERFUNCTIONNAME)
+ OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, MOVEARRAYPROCEDURENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE, RELEASERFUNCTIONNAME)
//=== { SELFCLASSNAME } =======================================================
constructor SELFCLASSNAME.Create(ACapacity: IntegerOWNERSHIPDECLARATION);
@@ -155,7 +155,7 @@
if Value > FCapacity then
// growing
SetLength(FElements, Value);
- MoveArray(FElements, FHead, NewHead, FCapacity - FHead);
+ MOVEARRAYPROCEDURENAME(FElements, FHead, NewHead, FCapacity - FHead);
if FCapacity > Value then
// packing
SetLength(FElements, Value);
@@ -166,7 +166,7 @@
// unlooped
if Value < FCapacity then
begin
- MoveArray(FElements, FHead, 0, FTail - FHead);
+ MOVEARRAYPROCEDURENAME(FElements, FHead, 0, FTail - FHead);
Dec(FTail, FHead);
FHead := 0;
end;
Modified: trunk/jcl/source/prototypes/containers/JclVectors.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclVectors.imp 2012-02-21 17:37:18 UTC (rev 3739)
+++ trunk/jcl/source/prototypes/containers/JclVectors.imp 2012-02-23 20:46:07 UTC (rev 3740)
@@ -154,7 +154,7 @@
FOwnList.SETTERPROCEDURENAME(FCursor, PARAMETERNAME);
end;*)
(*$JPPDEFINEMACRO JCLVECTORIMP(SELFCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME, ITRINTERFACENAME, ITRCLASSNAME,
- OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE,
+ OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, MOVEARRAYPROCEDURENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE,
GETTERFUNCTIONNAME, SETTERPROCEDURENAME, RELEASERFUNCTIONNAME)
//=== { SELFCLASSNAME } ======================================================
@@ -325,7 +325,7 @@
if ItemsEqual(FItems[I], PARAMETERNAME) then
begin
if I < (FSize - 1) then
- MoveArray(FItems, I + 1, I, FSize - 1 - I)
+ MOVEARRAYPROCEDURENAME(FItems, I + 1, I, FSize - 1 - I)
else
FItems[I] := DEFAULTVALUE;
Dec(FSize);
@@ -359,7 +359,7 @@
begin
Result := FItems[Index];
if Index < (FSize - 1) then
- MoveArray(FItems, Index + 1, Index, FSize - 1 - Index)
+ MOVEARRAYPROCEDURENAME(FItems, Index + 1, Index, FSize - 1 - Index)
else
FItems[Index] := DEFAULTVALUE;
Dec(FSize);
@@ -434,7 +434,7 @@
if Result then
begin
if Index < FSize then
- MoveArray(FItems, Index, Index + 1, FSize - Index);
+ MOVEARRAYPROCEDURENAME(FItems, Index, Index + 1, FSize - Index);
FItems[Index] := PARAMETERNAME;
Inc(FSize);
end;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-21 17:37:26
|
Revision: 3739
http://jcl.svn.sourceforge.net/jcl/?rev=3739&view=rev
Author: outchy
Date: 2012-02-21 17:37:18 +0000 (Tue, 21 Feb 2012)
Log Message:
-----------
fix compilation with D2009 and newer.
Modified Paths:
--------------
trunk/jcl/source/common/JclArrayLists.pas
trunk/jcl/source/common/JclArraySets.pas
trunk/jcl/source/common/JclBinaryTrees.pas
trunk/jcl/source/common/JclHashSets.pas
trunk/jcl/source/common/JclLinkedLists.pas
trunk/jcl/source/common/JclQueues.pas
trunk/jcl/source/common/JclStacks.pas
trunk/jcl/source/common/JclTrees.pas
trunk/jcl/source/common/JclVectors.pas
trunk/jcl/source/prototypes/JclArrayLists.pas
trunk/jcl/source/prototypes/JclArraySets.pas
trunk/jcl/source/prototypes/JclBinaryTrees.pas
trunk/jcl/source/prototypes/JclContainerIntf.pas
trunk/jcl/source/prototypes/JclHashSets.pas
trunk/jcl/source/prototypes/JclLinkedLists.pas
trunk/jcl/source/prototypes/JclQueues.pas
trunk/jcl/source/prototypes/JclStacks.pas
trunk/jcl/source/prototypes/JclTrees.pas
trunk/jcl/source/prototypes/JclVectors.pas
Modified: trunk/jcl/source/common/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/common/JclArrayLists.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclArrayLists.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1166,7 +1166,7 @@
// E = External helper to compare items for equality
// GetHashCode is not used
TJclArrayListE<T> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -1183,7 +1183,7 @@
// F = Function to compare items for equality
TJclArrayListF<T> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1194,7 +1194,7 @@
// I = Items can compare themselves to others
TJclArrayListI<T: IEquatable<T>> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclArraySets.pas
===================================================================
--- trunk/jcl/source/common/JclArraySets.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclArraySets.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -355,7 +355,7 @@
// E = External helper to compare items
TJclArraySetE<T> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
private
FComparer: IJclComparer<T>;
@@ -374,7 +374,7 @@
// F = Function to compare items
TJclArraySetF<T> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -385,7 +385,7 @@
// I = Items can compare themselves to others
TJclArraySetI<T: IComparable<T>> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclBinaryTrees.pas
===================================================================
--- trunk/jcl/source/common/JclBinaryTrees.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclBinaryTrees.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1883,7 +1883,7 @@
// E = External helper to compare items
TJclBinaryTreeE<T> = class(TJclBinaryTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclTree<T>)
private
FComparer: IJclComparer<T>;
@@ -1901,7 +1901,7 @@
// F = Function to compare items
TJclBinaryTreeF<T> = class(TJclBinaryTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1911,7 +1911,7 @@
// I = Items can compare themselves to an other
TJclBinaryTreeI<T: IComparable<T>> = class(TJclBinaryTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclHashSets.pas
===================================================================
--- trunk/jcl/source/common/JclHashSets.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclHashSets.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1112,7 +1112,7 @@
TJclHashSet<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
- IJclBaseContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>,
+ IJclContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclSet<T>)
private
FBuckets: array of TJclHashSetBucket<T>;
@@ -1185,7 +1185,7 @@
// E = External helper to compare items for equality
TJclHashSetE<T> = class(TJclHashSet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>, IJclCollection<T>, IJclSet<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -1206,7 +1206,7 @@
// F = Function to compare items for equality
TJclHashSetF<T> = class(TJclHashSet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclSet<T>)
protected
@@ -1218,7 +1218,7 @@
// I = Items can compare themselves to others
TJclHashSetI<T: IEquatable<T>, IHashable> = class(TJclHashSet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclSet<T>)
protected
Modified: trunk/jcl/source/common/JclLinkedLists.pas
===================================================================
--- trunk/jcl/source/common/JclLinkedLists.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclLinkedLists.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1159,7 +1159,7 @@
TJclLinkedListIterator<T> = class;
TJclLinkedList<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclBaseContainer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>,
IJclFlatContainer<T>, IJclEqualityComparer<T>,IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>)
protected
@@ -1241,7 +1241,7 @@
// E = External helper to compare items
// GetHashCode is never called
TJclLinkedListE<T> = class(TJclLinkedList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
IJclItemOwner<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -1258,7 +1258,7 @@
// F = Function to compare items for equality
TJclLinkedListF<T> = class(TJclLinkedList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1269,7 +1269,7 @@
// I = Items can compare themselves to an other
TJclLinkedListI<T: IEquatable<T>> = class(TJclLinkedList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclQueues.pas
===================================================================
--- trunk/jcl/source/common/JclQueues.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclQueues.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -414,7 +414,7 @@
TJclQueue<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
- IJclBaseContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
+ IJclContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
IJclQueue<T>)
protected
type
@@ -444,7 +444,7 @@
// E = external helper to compare items for equality (GetHashCode is not used)
TJclQueueE<T> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclQueue<T>, IJclItemOwner<T>)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclQueue<T>, IJclItemOwner<T>)
private
FEqualityComparer: IEqualityComparer<T>;
protected
@@ -459,7 +459,7 @@
// F = function to compare items for equality
TJclQueueF<T> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclQueue<T>, IJclItemOwner<T>)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclQueue<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
public
@@ -468,7 +468,7 @@
// I = items can compare themselves to an other
TJclQueueI<T: IEquatable<T>> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclQueue<T>, IJclItemOwner<T>)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclQueue<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
public
Modified: trunk/jcl/source/common/JclStacks.pas
===================================================================
--- trunk/jcl/source/common/JclStacks.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclStacks.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -387,7 +387,7 @@
TJclStack<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
- IJclBaseContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
+ IJclContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
IJclStack<T>)
protected
type
@@ -413,7 +413,7 @@
// E = external helper to compare items for equality
TJclStackE<T> = class(TJclStack<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclStack<T>, IJclItemOwner<T>)
private
FEqualityComparer: IEqualityComparer<T>;
@@ -429,7 +429,7 @@
// F = Function to compare items for equality
TJclStackF<T> = class(TJclStack<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclStack<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -439,7 +439,7 @@
// I = items can compare themselves to an other for equality
TJclStackI<T: IEquatable<T>> = class(TJclStack<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclStack<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclTrees.pas
===================================================================
--- trunk/jcl/source/common/JclTrees.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclTrees.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1719,7 +1719,7 @@
TJclTree<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
- IJclBaseContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
+ IJclContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclTree<T>)
protected
type
@@ -1838,7 +1838,7 @@
// E = External helper to compare items for equality
TJclTreeE<T> = class(TJclTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclTree<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -1854,7 +1854,7 @@
// F = Function to compare items for equality
TJclTreeF<T> = class(TJclTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1864,7 +1864,7 @@
// I = Items can compare themselves to an other for equality
TJclTreeI<T: IEquatable<T>> = class(TJclTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclVectors.pas
===================================================================
--- trunk/jcl/source/common/JclVectors.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/common/JclVectors.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1106,7 +1106,7 @@
TJclVector<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
- IJclBaseContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
+ IJclContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
type
@@ -1192,7 +1192,7 @@
// E = External helper to compare items for equality (GetHashCode is not used)
TJclVectorE<T> = class(TJclVector<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclItemOwner<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -1208,7 +1208,7 @@
// F = Function to compare items for equality
TJclVectorF<T> = class(TJclVector<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1218,7 +1218,7 @@
// I = Items can compare themselves to an other for equality
TJclVectorI<T: IEquatable<T>> = class(TJclVector<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/prototypes/JclArrayLists.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclArrayLists.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -77,7 +77,7 @@
// E = External helper to compare items for equality
// GetHashCode is not used
TJclArrayListE<T> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -94,7 +94,7 @@
// F = Function to compare items for equality
TJclArrayListF<T> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -105,7 +105,7 @@
// I = Items can compare themselves to others
TJclArrayListI<T: IEquatable<T>> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclArraySets.pas
===================================================================
--- trunk/jcl/source/prototypes/JclArraySets.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclArraySets.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -65,7 +65,7 @@
// E = External helper to compare items
TJclArraySetE<T> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
private
FComparer: IJclComparer<T>;
@@ -84,7 +84,7 @@
// F = Function to compare items
TJclArraySetF<T> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -95,7 +95,7 @@
// I = Items can compare themselves to others
TJclArraySetI<T: IComparable<T>> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclBinaryTrees.pas
===================================================================
--- trunk/jcl/source/prototypes/JclBinaryTrees.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclBinaryTrees.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -83,7 +83,7 @@
// E = External helper to compare items
TJclBinaryTreeE<T> = class(TJclBinaryTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclTree<T>)
private
FComparer: IJclComparer<T>;
@@ -101,7 +101,7 @@
// F = Function to compare items
TJclBinaryTreeF<T> = class(TJclBinaryTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -111,7 +111,7 @@
// I = Items can compare themselves to an other
TJclBinaryTreeI<T: IComparable<T>> = class(TJclBinaryTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclContainerIntf.pas
===================================================================
--- trunk/jcl/source/prototypes/JclContainerIntf.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclContainerIntf.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -1,4 +1,4 @@
-{**************************************************************************************************}
+{**************************************************************************************************}
{ }
{ Project JEDI Code Library (JCL) }
{ }
Modified: trunk/jcl/source/prototypes/JclHashSets.pas
===================================================================
--- trunk/jcl/source/prototypes/JclHashSets.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclHashSets.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -75,13 +75,13 @@
procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
end;
- {$JPPEXPANDMACRO JCLHASHSETINT(TJclHashSet<T>,TJclAbstractContainer<T>,IJclBaseContainer<T>,IJclFlatContainer<T>,TJclHashSetBucket<T>,IJclCollection<T>,IJclSet<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclHashConverter<T>, IJclItemOwner<T>\,,,,const ,AItem,T,; AOwnsItems: Boolean)}
+ {$JPPEXPANDMACRO JCLHASHSETINT(TJclHashSet<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,TJclHashSetBucket<T>,IJclCollection<T>,IJclSet<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclHashConverter<T>, IJclItemOwner<T>\,,,,const ,AItem,T,; AOwnsItems: Boolean)}
{$JPPEXPANDMACRO JCLHASHSETITRINT(TJclHashSetIterator<T>,IJclIterator<T>,TJclHashSet<T>,const ,AItem,T,GetItem,SetItem)}
// E = External helper to compare items for equality
TJclHashSetE<T> = class(TJclHashSet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>, IJclCollection<T>, IJclSet<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -102,7 +102,7 @@
// F = Function to compare items for equality
TJclHashSetF<T> = class(TJclHashSet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclSet<T>)
protected
@@ -114,7 +114,7 @@
// I = Items can compare themselves to others
TJclHashSetI<T: IEquatable<T>, IHashable> = class(TJclHashSet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclSet<T>)
protected
Modified: trunk/jcl/source/prototypes/JclLinkedLists.pas
===================================================================
--- trunk/jcl/source/prototypes/JclLinkedLists.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclLinkedLists.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -71,7 +71,7 @@
TJclLinkedListIterator<T> = class;
- (*$JPPEXPANDMACRO JCLLINKEDLISTINT(TLinkedListItem,TJclLinkedList<T>,TJclAbstractContainer<T>,IJclBaseContainer<T>,IJclFlatContainer<T>,IJclCollection<T>,IJclList<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLLINKEDLISTINT(TLinkedListItem,TJclLinkedList<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,IJclCollection<T>,IJclList<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclItemOwner<T>\,,
protected
type
TLinkedListItem = TJclLinkedListItem<T>;
@@ -82,7 +82,7 @@
// E = External helper to compare items
// GetHashCode is never called
TJclLinkedListE<T> = class(TJclLinkedList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
IJclItemOwner<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -99,7 +99,7 @@
// F = Function to compare items for equality
TJclLinkedListF<T> = class(TJclLinkedList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -110,7 +110,7 @@
// I = Items can compare themselves to an other
TJclLinkedListI<T: IEquatable<T>> = class(TJclLinkedList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclCollection<T>, IJclList<T>, IJclEqualityComparer<T>,
IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclQueues.pas
===================================================================
--- trunk/jcl/source/prototypes/JclQueues.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclQueues.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -54,7 +54,7 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- (*$JPPEXPANDMACRO JCLQUEUEINT(TJclQueue<T>,IJclBaseContainer<T>,IJclQueue<T>,TJclAbstractContainer<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLQUEUEINT(TJclQueue<T>,IJclContainer<T>,IJclQueue<T>,TJclAbstractContainer<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
TDynArray = array of T;
@@ -62,7 +62,7 @@
// E = external helper to compare items for equality (GetHashCode is not used)
TJclQueueE<T> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclQueue<T>, IJclItemOwner<T>)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclQueue<T>, IJclItemOwner<T>)
private
FEqualityComparer: IEqualityComparer<T>;
protected
@@ -77,7 +77,7 @@
// F = function to compare items for equality
TJclQueueF<T> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclQueue<T>, IJclItemOwner<T>)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclQueue<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
public
@@ -86,7 +86,7 @@
// I = items can compare themselves to an other
TJclQueueI<T: IEquatable<T>> = class(TJclQueue<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclQueue<T>, IJclItemOwner<T>)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>, IJclQueue<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
public
Modified: trunk/jcl/source/prototypes/JclStacks.pas
===================================================================
--- trunk/jcl/source/prototypes/JclStacks.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclStacks.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -64,14 +64,14 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- (*$JPPEXPANDMACRO JCLSTACKINT(TJclStack<T>,IJclBaseContainer<T>,IJclStack<T>,TJclAbstractContainer<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLSTACKINT(TJclStack<T>,IJclContainer<T>,IJclStack<T>,TJclAbstractContainer<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
TDynArray = array of T;,; AOwnsItems: Boolean,const ,AItem,T)*)
// E = external helper to compare items for equality
TJclStackE<T> = class(TJclStack<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclStack<T>, IJclItemOwner<T>)
private
FEqualityComparer: IEqualityComparer<T>;
@@ -87,7 +87,7 @@
// F = Function to compare items for equality
TJclStackF<T> = class(TJclStack<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclStack<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -97,7 +97,7 @@
// I = items can compare themselves to an other for equality
TJclStackI<T: IEquatable<T>> = class(TJclStack<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclStack<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclTrees.pas
===================================================================
--- trunk/jcl/source/prototypes/JclTrees.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclTrees.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -71,7 +71,7 @@
TJclPreOrderTreeIterator<T> = class;
TJclPostOrderTreeIterator<T> = class;
- {$JPPEXPANDMACRO JCLTREEINT(TTreeNode,TJclTree<T>,TJclAbstractContainer<T>,IJclBaseContainer<T>,IJclFlatContainer<T>,IJclEqualityComparer<T>,IJclCollection<T>,IJclTree<T>,IJclIterator<T>,IJclTreeIterator<T>, IJclItemOwner<T>\,,
+ {$JPPEXPANDMACRO JCLTREEINT(TTreeNode,TJclTree<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,IJclEqualityComparer<T>,IJclCollection<T>,IJclTree<T>,IJclIterator<T>,IJclTreeIterator<T>, IJclItemOwner<T>\,,
protected
type
TTreeNode = TJclTreeNode<T>;
@@ -82,7 +82,7 @@
// E = External helper to compare items for equality
TJclTreeE<T> = class(TJclTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclTree<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -98,7 +98,7 @@
// F = Function to compare items for equality
TJclTreeF<T> = class(TJclTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -108,7 +108,7 @@
// I = Items can compare themselves to an other for equality
TJclTreeI<T: IEquatable<T>> = class(TJclTree<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclContainer<T>, IJclItemOwner<T>, IJclEqualityComparer<T>,
IJclCollection<T>, IJclTree<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/prototypes/JclVectors.pas
===================================================================
--- trunk/jcl/source/prototypes/JclVectors.pas 2012-02-20 20:31:00 UTC (rev 3738)
+++ trunk/jcl/source/prototypes/JclVectors.pas 2012-02-21 17:37:18 UTC (rev 3739)
@@ -66,7 +66,7 @@
TJclVectorIterator<T> = class;
- (*$JPPEXPANDMACRO JCLVECTORINT(TJclVector<T>,TJclAbstractContainer<T>,IJclBaseContainer<T>,IJclFlatContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLVECTORINT(TJclVector<T>,TJclAbstractContainer<T>,IJclContainer<T>,IJclFlatContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
TDynArray = array of T;
@@ -77,7 +77,7 @@
// E = External helper to compare items for equality (GetHashCode is not used)
TJclVectorE<T> = class(TJclVector<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclItemOwner<T>)
private
FEqualityComparer: IJclEqualityComparer<T>;
@@ -93,7 +93,7 @@
// F = Function to compare items for equality
TJclVectorF<T> = class(TJclVector<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -103,7 +103,7 @@
// I = Items can compare themselves to an other for equality
TJclVectorI<T: IEquatable<T>> = class(TJclVector<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclContainer<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclItemOwner<T>)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-20 20:31:09
|
Revision: 3738
http://jcl.svn.sourceforge.net/jcl/?rev=3738&view=rev
Author: outchy
Date: 2012-02-20 20:31:00 +0000 (Mon, 20 Feb 2012)
Log Message:
-----------
Procedure names for MoveArray, Iterate, Fill, Apply, Reverse, CountObject... handled by JppContainers.
Modified Paths:
--------------
trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
trunk/jcl/source/common/JclPreProcessorContainerTypes.pas
trunk/jcl/source/prototypes/JclAlgorithms.pas
trunk/jcl/source/prototypes/containers/JclAlgorithms.imp
trunk/jcl/source/prototypes/containers/JclAlgorithms.int
Modified: trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
+++ trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas 2012-02-20 20:31:00 UTC (rev 3738)
@@ -49,110 +49,94 @@
TJclAlgorithmsIntProcParams = class(TJclAlgorithmsIntParams)
protected
FOverload: string;
- FProcName: string;
- function GetProcName: string; virtual;
- function IsProcNameStored: Boolean;
public
property Overload: string read FOverload write FOverload;
- property ProcName: string read GetProcName write FProcName stored IsProcNameStored;
end;
TJclAlgorithmsImpProcParams = class(TJclContainerImplementationParams)
protected
- function GetProcName: string;
- procedure SetProcName(const Value: string);
// function CodeUnit: string; override;
- public
- property ProcName: string read GetProcName write SetProcName stored False;
end;
- (* MOVEARRAYINT(PROCNAME, DYNARRAYTYPENAME, OVERLOAD) *)
+ (* MOVEARRAYINT(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME, OVERLOAD) *)
TJclMoveArrayIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
property Overload;
- property ProcName;
+ property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property DynArrayTypeName: string index taDynArrayTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* MOVEARRAYIMP(PROCNAME, DYNARRAYTYPENAME) *)
+ (* MOVEARRAYIMP(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME) *)
TJclMoveArrayImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property MoveArrayProcedureName: string index taMoveArrayProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property DynArrayTypeName: string index taDynArrayTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* ITERATEINT(PROCNAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME, OVERLOAD) *)
+ (* ITERATEINT(ITERATEPROCEDURENAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME, OVERLOAD) *)
TJclIterateIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
property Overload;
- property ProcName;
+ property IterateProcedureName: string index taIterateProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property IterateProcedureTypeName: string index taIterateProcedureTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* ITERATEIMP(PROCNAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME) *)
+ (* ITERATEIMP(ITERATEPROCEDURENAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME) *)
TJclIterateImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property IterateProcedureName: string index taIterateProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property IterateProcedureTypeName: string index taIterateProcedureTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* APPLYINT(PROCNAME, ITRINTERFACENAME, APPLYFUNCTIONTYPENAME, OVERLOAD) *)
+ (* APPLYINT(APPLYPROCEDURENAME, ITRINTERFACENAME, APPLYFUNCTIONTYPENAME, OVERLOAD) *)
TJclApplyIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
property Overload;
- property ProcName;
+ property ApplyProcedureName: string index taApplyProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ApplyFunctionTypeName: string index taApplyFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* APPLYIMP(PROCNAME, ITRINTERFACENAME, APPLYFUNCTIONNAME, SETTERPROCEDURENAME) *)
+ (* APPLYIMP(APPLYPROCEDURENAME, ITRINTERFACENAME, APPLYFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclApplyImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property ApplyProcedureName: string index taApplyProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ApplyFunctionTypeName: string index taApplyFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* SIMPLECOMPAREINT(PROCNAME, CONSTKEYWORD, TYPENAME) *)
+ (* SIMPLECOMPAREINT(SIMPLECOMPAREFUNCTIONNAME, CONSTKEYWORD, TYPENAME) *)
TJclSimpleCompareIntParams = class(TJclAlgorithmsIntParams)
published
- property ProcName: string index taSimpleCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property SimpleCompareFunctionName: string index taSimpleCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* SIMPLEEQUALITYCOMPAREINT(PROCNAME, CONSTKEYWORD, TYPENAME) *)
+ (* SIMPLEEQUALITYCOMPAREINT(SIMPLEEQUALITYCOMPAREFUNCTIONNAME, CONSTKEYWORD, TYPENAME) *)
TJclSimpleEqualityCompareIntParams = class(TJclAlgorithmsIntParams)
published
- property ProcName: string index taSimpleEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property SimpleEqualityCompareFunctionName: string index taSimpleEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* SIMPLEHASHCONVERTINT(PROCNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ (* SIMPLEHASHCONVERTINT(SIMPLEHASHCONVERTFUNCTIONNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclSimpleHashConvertIntParams = class(TJclAlgorithmsIntParams)
published
- property ProcName: string index taSimpleHashConvertFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property SimpleHashConvertFunctionName: string index taSimpleHashConvertFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
+ (* FINDINT(FINDFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclFindIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property FindFunctionName: string index taFindFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -160,10 +144,10 @@
property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME) *)
+ (* FINDIMP(FINDFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME) *)
TJclFindImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property FindFunctionName: string index taFindFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -171,12 +155,10 @@
property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDEQINT(PROCNAME,ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE, OVERLOAD) *)
+ (* FINDEQINT(FINDFUNCTIONNAME,ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE, OVERLOAD) *)
TJclFindEqIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property FindFunctionName: string index taFindFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -184,10 +166,10 @@
property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDEQIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME) *)
+ (* FINDEQIMP(FINDFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME) *)
TJclFindEqImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property FindFunctionName: string index taFindFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -195,12 +177,10 @@
property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
+ (* COUNTOBJECTINT(COUNTOBJECTFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclCountObjectIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property CountObjectFunctionName: string index taCountObjectFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -208,10 +188,10 @@
property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME) *)
+ (* COUNTOBJECTIMP(COUNTOBJECTFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME) *)
TJclCountObjectImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property CountObjectFunctionName: string index taCountObjectFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -219,12 +199,10 @@
property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTEQINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME, OVERLOAD) *)
+ (* COUNTOBJECTEQINT(COUNTOBJECTFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclCountObjectEqIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property CountObjectFunctionName: string index taCountObjectFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -232,10 +210,10 @@
property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTEQIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME) *)
+ (* COUNTOBJECTEQIMP(COUNTOBJECTFUNCTIONNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME) *)
TJclCountObjectEqImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property CountObjectFunctionName: string index taCountObjectFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -243,61 +221,55 @@
property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COPYINT(PROCNAME, ITRINTERFACENAME, OVERLOAD) *)
+ (* COPYINT(COPYPROCEDURENAME, ITRINTERFACENAME, OVERLOAD) *)
TJclCopyIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property CopyProcedureName: string index taCopyProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COPYIMP(PROCNAME, ITRINTERFACENAME, SETTERPROCEDURENAME) *)
+ (* COPYIMP(COPYPROCEDURENAME, ITRINTERFACENAME, SETTERPROCEDURENAME) *)
TJclCopyImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property CopyProcedureName: string index taCopyProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* GENERATEINT(PROCNAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, OVERLOAD) *)
+ (* GENERATEINT(GENERATEPROCEDURENAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, OVERLOAD) *)
TJclGenerateIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property GenerateProcedureName: string index taGenerateProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* GENERATEIMP(PROCNAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ (* GENERATEIMP(GENERATEPROCEDURENAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclGenerateImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property GenerateProcedureName: string index taGenerateProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FILLINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, OVERLOAD) *)
+ (* FILLINT(FILLPROCEDURENAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, OVERLOAD) *)
TJclFillIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property FillProcedureName: string index taFillProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FILLIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, SETTERPROCEDURENAME) *)
+ (* FILLIMP(FILLPROCEDURENAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, SETTERPROCEDURENAME) *)
TJclFillImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property FillProcedureName: string index taFillProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -305,26 +277,24 @@
property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* REVERSEINT(PROCNAME, ITRINTERFACENAME, OVERLOAD) *)
+ (* REVERSEINT(REVERSEPROCEDURENAME, ITRINTERFACENAME, OVERLOAD) *)
TJclReverseIntParams = class(TJclAlgorithmsIntProcParams)
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property ReverseProcedureName: string index taReverseProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* REVERSEIMP(PROCNAME, ITRINTERFACENAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
+ (* REVERSEIMP(REVERSEPROCEDURENAME, ITRINTERFACENAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclReverseImpParams = class(TJclAlgorithmsImpProcParams)
published
- property ProcName;
+ property ReverseProcedureName: string index taReverseProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* SORTINT(PROCNAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
+ (* SORTINT(SORTPROCEDURENAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclSortIntParams = class(TJclAlgorithmsIntProcParams)
private
FLeft: string;
@@ -333,17 +303,32 @@
function GetRight: string;
function IsLeftStored: Boolean;
function IsRightStored: Boolean;
- protected
- function GetProcName: string; override;
published
- property ProcName;
+ property SortProcedureName: string index taSortProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property Left: string read GetLeft write FLeft stored IsLeftStored;
property Right: string read GetRight write FRight stored IsRightStored;
property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* QUICKSORTIMP(PROCNAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
+ (* QUICKSORTINT(QUICKSORTPROCEDURENAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
+ TJclQuickSortIntParams = class(TJclAlgorithmsIntProcParams)
+ private
+ FLeft: string;
+ FRight: string;
+ function GetLeft: string;
+ function GetRight: string;
+ function IsLeftStored: Boolean;
+ function IsRightStored: Boolean;
+ published
+ property QuickSortProcedureName: string index taQuickSortProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
+ property Left: string read GetLeft write FLeft stored IsLeftStored;
+ property Right: string read GetRight write FRight stored IsRightStored;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
+ end;
+
+ (* QUICKSORTIMP(QUICKSORTPROCEDURENAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclQuickSortImpParams = class(TJclAlgorithmsImpProcParams)
private
function GetLeft: string;
@@ -351,7 +336,7 @@
procedure SetLeft(const Value: string);
procedure SetRight(const Value: string);
published
- property ProcName;
+ property QuickSortProcedureName: string index taQuickSortProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property Left: string read GetLeft write SetLeft stored False;
property Right: string read GetRight write SetRight stored False;
@@ -392,6 +377,7 @@
RegisterContainerParams('FILLINT', TJclFillIntParams);
RegisterContainerParams('REVERSEINT', TJclReverseIntParams);
RegisterContainerParams('SORTINT', TJclSortIntParams);
+ RegisterContainerParams('QUICKSORTINT', TJclQuickSortIntParams);
RegisterContainerParams('MOVEARRAYIMP', TJclMoveArrayImpParams, TJclMoveArrayIntParams);
RegisterContainerParams('ITERATEIMP', TJclIterateImpParams, TJclIterateIntParams);
@@ -404,162 +390,57 @@
RegisterContainerParams('GENERATEIMP', TJclGenerateImpParams, TJclGenerateIntParams);
RegisterContainerParams('FILLIMP', TJclFillImpParams, TJclFillIntParams);
RegisterContainerParams('REVERSEIMP', TJclReverseImpParams, TJclReverseIntParams);
- RegisterContainerParams('QUICKSORTIMP', TJclQuickSortImpParams, TJclSortIntParams);
+ RegisterContainerParams('QUICKSORTIMP', TJclQuickSortImpParams, TJclQuickSortIntParams);
end;
-//=== { TJclAlgorithmsIntFunctionParams } ====================================
+//=== { TJclSortIntParams } ==================================================
-function TJclAlgorithmsIntProcParams.GetProcName: string;
+function TJclSortIntParams.GetLeft: string;
begin
- Result := FProcName;
- // override to customize
-end;
-
-function TJclAlgorithmsIntProcParams.IsProcNameStored: Boolean;
-begin
- Result := FProcName <> '';
-end;
-
-//=== { TJclAlgorithmsImpProcParams } ========================================
-
-function TJclAlgorithmsImpProcParams.GetProcName: string;
-begin
- Result := (InterfaceParams as TJclAlgorithmsIntProcParams).ProcName;
-end;
-
-procedure TJclAlgorithmsImpProcParams.SetProcName(const Value: string);
-begin
- (InterfaceParams as TJclAlgorithmsIntProcParams).ProcName := Value;
-end;
-
-//=== { TJclMoveArrayIntParams } =============================================
-
-function TJclMoveArrayIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
+ Result := FLeft;
if Result = '' then
- Result := 'MoveArray';
+ Result := 'L';
end;
-//=== { TJclIterateIntParams } ===============================================
-
-function TJclIterateIntParams.GetProcName: string;
+function TJclSortIntParams.GetRight: string;
begin
- Result := inherited GetProcName;
+ Result := FRight;
if Result = '' then
- Result := 'Iterate';
+ Result := 'R';
end;
-//=== { TJclApplyIntParams } =================================================
-
-function TJclApplyIntParams.GetProcName: string;
+function TJclSortIntParams.IsLeftStored: Boolean;
begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Apply';
+ Result := FLeft <> '';
end;
-//=== { TJclFindIntParams } ==================================================
-
-function TJclFindIntParams.GetProcName: string;
+function TJclSortIntParams.IsRightStored: Boolean;
begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Find';
+ Result := FRight <> '';
end;
-//=== { TJclFindEqIntParams } ================================================
+//=== { TJclQuickSortIntParams } =============================================
-function TJclFindEqIntParams.GetProcName: string;
+function TJclQuickSortIntParams.GetLeft: string;
begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Find';
-end;
-
-//=== { TJclCountObjectIntParams } ===========================================
-
-function TJclCountObjectIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'CountObject';
-end;
-
-//=== { TJclCountObjectEqIntParams } =========================================
-
-function TJclCountObjectEqIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'CountObject';
-end;
-
-//=== { TJclCopyIntParams } ==================================================
-
-function TJclCopyIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Copy';
-end;
-
-//=== { TJclGenerateIntParams } ==============================================
-
-function TJclGenerateIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Generate';
-end;
-
-//=== { TJclFillIntParams } ==================================================
-
-function TJclFillIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Fill';
-end;
-
-//=== { TJclReverseIntParams } ===============================================
-
-function TJclReverseIntParams.GetProcName: string;
-begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'Reverse';
-end;
-
-//=== { TJclSortIntParams } ==================================================
-
-function TJclSortIntParams.GetLeft: string;
-begin
Result := FLeft;
if Result = '' then
Result := 'L';
end;
-function TJclSortIntParams.GetProcName: string;
+function TJclQuickSortIntParams.GetRight: string;
begin
- Result := inherited GetProcName;
- if Result = '' then
- Result := 'QuickSort';
-end;
-
-function TJclSortIntParams.GetRight: string;
-begin
Result := FRight;
if Result = '' then
Result := 'R';
end;
-function TJclSortIntParams.IsLeftStored: Boolean;
+function TJclQuickSortIntParams.IsLeftStored: Boolean;
begin
Result := FLeft <> '';
end;
-function TJclSortIntParams.IsRightStored: Boolean;
+function TJclQuickSortIntParams.IsRightStored: Boolean;
begin
Result := FRight <> '';
end;
@@ -568,22 +449,22 @@
function TJclQuickSortImpParams.GetLeft: string;
begin
- Result := (InterfaceParams as TJclSortIntParams).Left;
+ Result := (InterfaceParams as TJclQuickSortIntParams).Left;
end;
function TJclQuickSortImpParams.GetRight: string;
begin
- Result := (InterfaceParams as TJclSortIntParams).Right;
+ Result := (InterfaceParams as TJclQuickSortIntParams).Right;
end;
procedure TJclQuickSortImpParams.SetLeft(const Value: string);
begin
- (InterfaceParams as TJclSortIntParams).Left := Value;
+ (InterfaceParams as TJclQuickSortIntParams).Left := Value;
end;
procedure TJclQuickSortImpParams.SetRight(const Value: string);
begin
- (InterfaceParams as TJclSortIntParams).Right := Value;
+ (InterfaceParams as TJclQuickSortIntParams).Right := Value;
end;
initialization
Modified: trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas 2012-02-20 18:48:39 UTC (rev 3737)
+++ trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas 2012-02-20 20:31:00 UTC (rev 3738)
@@ -58,11 +58,14 @@
{taSetterProcedureName} 'SetObject',
{taParameterName} 'AInterface',
{taDynArrayTypeName} 'TDynIInterfaceArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Objects',
{taBaseContainerClassName} 'TJclIntfAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TIntfIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TIntfApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TIntfCompare',
{taSimpleCompareFunctionName} 'IntfSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TIntfEqualityCompare',
@@ -94,6 +97,14 @@
{taListInterfaceName} 'IJclIntfList',
{taListInterfaceGUID} '{E14EDA4B-1DAA-4013-9E6C-CDCB365C7CF9}',
{taSortProcedureTypeName} 'TIntfSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclIntfArray',
{taArrayInterfaceGUID} '{B055B427-7817-43FC-97D4-AD1845643D63}',
{taArrayListClassName} 'TJclIntfArrayList',
@@ -147,11 +158,14 @@
{taSetterProcedureName} 'SetString',
{taParameterName} 'AString',
{taDynArrayTypeName} 'TDynAnsiStringArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Strings',
{taBaseContainerClassName} 'TJclAnsiStrAbstractContainer',
{taBaseCollectionClassName} 'TJclAnsiStrAbstractCollection',
{taIterateProcedureTypeName} 'TAnsiStrIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TAnsiStrApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TAnsiStrCompare',
{taSimpleCompareFunctionName} 'AnsiStrSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TAnsiStrEqualityCompare',
@@ -183,6 +197,14 @@
{taListInterfaceName} 'IJclAnsiStrList',
{taListInterfaceGUID} '{07DD7644-EAC6-4059-99FC-BEB7FBB73186}',
{taSortProcedureTypeName} 'TAnsiStrSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclAnsiStrArray',
{taArrayInterfaceGUID} '{4953EA83-9288-4537-9D10-544D1C992B62}',
{taArrayListClassName} 'TJclAnsiStrArrayList',
@@ -236,11 +258,14 @@
{taSetterProcedureName} 'SetString',
{taParameterName} 'AString',
{taDynArrayTypeName} 'TDynWideStringArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Strings',
{taBaseContainerClassName} 'TJclWideStrAbstractContainer',
{taBaseCollectionClassName} 'TJclWideStrAbstractCollection',
{taIterateProcedureTypeName} 'TWideStrIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TWideStrApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TWideStrCompare',
{taSimpleCompareFunctionName} 'WideStrSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TWideStrEqualityCompare',
@@ -272,6 +297,14 @@
{taListInterfaceName} 'IJclWideStrList',
{taListInterfaceGUID} '{C9955874-6AC0-4CE0-8CC0-606A3F1702C6}',
{taSortProcedureTypeName} 'TWideStrSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclWideStrArray',
{taArrayInterfaceGUID} '{3CE09F9A-5CB4-4867-80D5-C2313D278D69}',
{taArrayListClassName} 'TJclWideStrArrayList',
@@ -325,11 +358,14 @@
{taSetterProcedureName} 'SetString',
{taParameterName} 'AString',
{taDynArrayTypeName} 'TDynUnicodeStringArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Strings',
{taBaseContainerClassName} 'TJclUnicodeStrAbstractContainer',
{taBaseCollectionClassName} 'TJclUnicodeStrAbstractCollection',
{taIterateProcedureTypeName} 'TUnicodeStrIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TUnicodeStrApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TUnicodeStrCompare',
{taSimpleCompareFunctionName} 'UnicodeStrSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TUnicodeStrEqualityCompare',
@@ -361,6 +397,14 @@
{taListInterfaceName} 'IJclUnicodeStrList',
{taListInterfaceGUID} '{F4307EB4-D66E-4656-AC56-50883D0F2C83}',
{taSortProcedureTypeName} 'TUnicodeStrSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclUnicodeStrArray',
{taArrayInterfaceGUID} '{24312E5B-B61D-485C-9E57-AC36C93D8159}',
{taArrayListClassName} 'TJclUnicodeStrArrayList',
@@ -414,11 +458,14 @@
{taSetterProcedureName} 'SetString',
{taParameterName} 'AString',
{taDynArrayTypeName} 'TDynStringArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Strings',
{taBaseContainerClassName} '',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TStrIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TStrApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TStrCompare',
{taSimpleCompareFunctionName} 'StrSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TStrEqualityCompare',
@@ -450,6 +497,14 @@
{taListInterfaceName} 'IJclStrList',
{taListInterfaceGUID} '',
{taSortProcedureTypeName} 'TStrSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclStrArray',
{taArrayInterfaceGUID} '',
{taArrayListClassName} 'TJclStrArrayList',
@@ -503,11 +558,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynSingleArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} 'TJclSingleAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TSingleIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TSingleApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TSingleCompare',
{taSimpleCompareFunctionName} 'SingleSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TSingleEqualityCompare',
@@ -539,6 +597,14 @@
{taListInterfaceName} 'IJclSingleList',
{taListInterfaceGUID} '{D081324C-70A4-4AAC-BA42-7557F0262826}',
{taSortProcedureTypeName} 'TSingleSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclSingleArray',
{taArrayInterfaceGUID} '{B96E2A4D-D750-4B65-B975-C619A05A29F6}',
{taArrayListClassName} 'TJclSingleArrayList',
@@ -592,11 +658,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynDoubleArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} 'TJclDoubleAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TDoubleIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TDoubleApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TDoubleCompare',
{taSimpleCompareFunctionName} 'DoubleSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TDoubleEqualityCompare',
@@ -628,6 +697,14 @@
{taListInterfaceName} 'IJclDoubleList',
{taListInterfaceGUID} '{ECA58515-3903-4312-9486-3214E03F35AB}',
{taSortProcedureTypeName} 'TDoubleSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclDoubleArray',
{taArrayInterfaceGUID} '{67E66324-9757-4E85-8ECD-53396910FB39}',
{taArrayListClassName} 'TJclDoubleArrayList',
@@ -681,11 +758,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynExtendedArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} 'TJclExtendedAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TExtendedIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TExtendedApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TExtendedCompare',
{taSimpleCompareFunctionName} 'ExtendedSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TExtendedEqualityCompare',
@@ -717,6 +797,14 @@
{taListInterfaceName} 'IJclExtendedList',
{taListInterfaceGUID} '{7463F954-F8DF-4B02-A284-FCB98746248E}',
{taSortProcedureTypeName} 'TExtendedSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclExtendedArray',
{taArrayInterfaceGUID} '{D43E8D18-26B3-41A2-8D52-ED7EA2FE1AB7}',
{taArrayListClassName} 'TJclExtendedArrayList',
@@ -770,11 +858,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynFloatArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} '',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TFloatIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TFloatApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TFloatCompare',
{taSimpleCompareFunctionName} 'FloatSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TFloatEqualityCompare',
@@ -806,6 +897,14 @@
{taListInterfaceName} 'IJclFloatList',
{taListInterfaceGUID} '',
{taSortProcedureTypeName} 'TFloatSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclFloatArray',
{taArrayInterfaceGUID} '',
{taArrayListClassName} 'TJclFloatArrayList',
@@ -859,11 +958,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynIntegerArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} 'TJclIntegerAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TIntegerIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TIntegerApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TIntegerCompare',
{taSimpleCompareFunctionName} 'IntegerSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TIntegerEqualityCompare',
@@ -895,6 +997,14 @@
{taListInterfaceName} 'IJclIntegerList',
{taListInterfaceGUID} '{339BE91B-557D-4CE0-A854-1CBD4FE31725}',
{taSortProcedureTypeName} 'TIntegerSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclIntegerArray',
{taArrayInterfaceGUID} '{2B7C8B33-C0BD-4EC3-9764-63866E174781}',
{taArrayListClassName} 'TJclIntegerArrayList',
@@ -948,11 +1058,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynCardinalArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} 'TJclCardinalAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TCardinalIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TCardinalApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TCardinalCompare',
{taSimpleCompareFunctionName} 'CardinalSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TCardinalEqualityCompare',
@@ -984,6 +1097,14 @@
{taListInterfaceName} 'IJclCardinalList',
{taListInterfaceGUID} '{02B09EA8-DE6F-4A18-AA57-C3533E6AC4E3}',
{taSortProcedureTypeName} 'TCardinalSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclCardinalArray',
{taArrayInterfaceGUID} '{C451F2F8-65C6-4C29-99A0-CC9C15356418}',
{taArrayListClassName} 'TJclCardinalArrayList',
@@ -1037,11 +1158,14 @@
{taSetterProcedureName} 'SetValue',
{taParameterName} 'AValue',
{taDynArrayTypeName} 'TDynInt64Array',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Values',
{taBaseContainerClassName} 'TJclInt64AbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TInt64IterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TInt64ApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TInt64Compare',
{taSimpleCompareFunctionName} 'Int64SimpleCompare',
{taEqualityCompareFunctionTypeName} 'TInt64EqualityCompare',
@@ -1073,6 +1197,14 @@
{taListInterfaceName} 'IJclInt64List',
{taListInterfaceGUID} '{E8D49200-91D3-4BD0-A59B-B93EC7E2074B}',
{taSortProcedureTypeName} 'TInt64SortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclInt64Array',
{taArrayInterfaceGUID} '{D947C43D-2D04-442A-A707-39EDE7D96FC9}',
{taArrayListClassName} 'TJclInt64ArrayList',
@@ -1126,11 +1258,14 @@
{taSetterProcedureName} 'SetPointer',
{taParameterName} 'APtr',
{taDynArrayTypeName} 'TDynPointerArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Pointers',
{taBaseContainerClassName} 'TJclPtrAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TPtrIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TPtrApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TPtrCompare',
{taSimpleCompareFunctionName} 'PtrSimpleCompare',
{taEqualityCompareFunctionTypeName} 'TPtrEqualityCompare',
@@ -1162,6 +1297,14 @@
{taListInterfaceName} 'IJclPtrList',
{taListInterfaceGUID} '{2CF5CF1F-C012-480C-A4CE-38BDAFB15D05}',
{taSortProcedureTypeName} 'TPtrSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclPtrArray',
{taArrayInterfaceGUID} '{D43E8D18-26B3-41A2-8D52-ED7EA2FE1AB7}',
{taArrayListClassName} 'TJclPtrArrayList',
@@ -1215,11 +1358,14 @@
{taSetterProcedureName} 'SetObject',
{taParameterName} 'AObject',
{taDynArrayTypeName} 'TDynObjectArray',
+ {taMoveArrayProcedureName} 'MoveArray',
{taArrayPropertyName} 'Objects',
{taBaseContainerClassName} 'TJclAbstractContainer',
{taBaseCollectionClassName} '',
{taIterateProcedureTypeName} 'TIterateProcedure',
+ {taIterateProcedureName} 'Iterate',
{taApplyFunctionTypeName} 'TApplyFunction',
+ {taApplyProcedureName} 'Apply',
{taCompareFunctionTypeName} 'TCompare',
{taSimpleCompareFunctionName} 'SimpleCompare',
{taEqualityCompareFunctionTypeName} 'TEqualityCompare',
@@ -1251,6 +1397,14 @@
{taListInterfaceName} 'IJclList',
{taListInterfaceGUID} '{8ABC70AC-5C06-43EA-AFE0-D066379BCC28}',
{taSortProcedureTypeName} 'TSortProc',
+ {taSortProcedureName} 'Sort',
+ {taQuickSortProcedureName} 'QuickSort',
+ {taFindFunctionName} 'Find',
+ {taCountObjectFunctionName} 'CountObject',
+ {taCopyProcedureName} 'Copy',
+ {taGenerateProcedureName} 'Generate',
+ {taFillProcedureName} 'Fill',
+ {taReverseProcedureName} 'Reverse',
{taArrayInterfaceName} 'IJclArray',
{taArrayInterfaceGUID} '{A69F6D35-54B2-4361-852E-097ED75E648A}',
{taArrayListClassName} 'TJclArrayList',
Modified: trunk/jcl/source/common/JclPreProcessorContainerTypes.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainerTypes.pas 2012-02-20 18:48:39 UTC (rev 3737)
+++ trunk/jcl/source/common/JclPreProcessorContainerTypes.pas 2012-02-20 20:31:00 UTC (rev 3738)
@@ -62,11 +62,14 @@
taSetterProcedureName,
taParameterName,
taDynArrayTypeName,
+ taMoveArrayProcedureName,
taArrayPropertyName,
taBaseContainerClassName,
taBaseCollectionClassName,
taIterateProcedureTypeName,
+ taIterateProcedureName,
taApplyFunctionTypeName,
+ taApplyProcedureName,
taCompareFunctionTypeName,
taSimpleCompareFunctionName,
taEqualityCompareFunctionTypeName,
@@ -98,6 +101,14 @@
taListInterfaceName,
taListInterfaceGUID,
taSortProcedureTypeName,
+ taSortProcedureName,
+ taQuickSortProcedureName,
+ taFindFunctionName,
+ taCountObjectFunctionName,
+ taCopyProcedureName,
+ taGenerateProcedureName,
+ taFillProcedureName,
+ taReverseProcedureName,
taArrayInterfaceName,
taArrayInterfaceGUID,
taArrayListClassName,
@@ -220,11 +231,14 @@
{SetterProcedureName} (IsGUID: False; DefaultValue: 'Set%s'),
{ParameterName} (IsGUID: False; DefaultValue: 'A%s'),
{DynArrayTypeName} (IsGUID: False; DefaultValue: 'TDyn%sArray'),
+ {MoveArrayProcedureName} (IsGUID: False; DefaultValue: 'MoveArray'),
{ArrayParameterName} (IsGUID: False; DefaultValue: '%ss'),
{BaseContainerClassName} (IsGUID: False; DefaultValue: ''),
{BaseCollectionClassName} (IsGUID: False; DefaultValue: ''),
{IterateProcedureTypeName} (IsGUID: False; DefaultValue: 'T%sIterateFunction'),
+ {IterateProcedureName} (IsGUID: False; DefaultValue: 'Iterate'),
{ApplyFunctionTypeName} (IsGUID: False; DefaultValue: 'T%sApplyFunction'),
+ {ApplyProcedureName} (IsGUID: False; DefaultValue: 'Apply'),
{CompareFunctionTypeName} (IsGUID: False; DefaultValue: 'T%sCompareFunction'),
{SimpleCompareFunctionName} (IsGUID: False; DefaultValue: '%sSimpleCompare'),
{EqualityCompareFunctionTypeName} (IsGUID: False; DefaultValue: 'T%sEqualityCompare'),
@@ -256,6 +270,14 @@
{ListInterfaceName} (IsGUID: False; DefaultValue: 'IJcl%sList'),
{ListInterfaceGUID} (IsGUID: True; DefaultValue: ''),
{SortProcedureTypeName} (IsGUID: False; DefaultValue: 'T%sSortProc'),
+ {SortProcedureName} (IsGUID: False; DefaultValue: 'Sort'),
+ {QuickSortProcedureName} (IsGUID: False; DefaultValue: 'QuickSort'),
+ {FindFunctionName} (IsGUID: False; DefaultValue: 'Find'),
+ {CountObjectFunctionName} (IsGUID: False; DefaultValue: 'CountObject'),
+ {CopyProcedureName} (IsGUID: False; DefaultValue: 'Copy'),
+ {GenerateProcedureName} (IsGUID: False; DefaultValue: 'Generate'),
+ {FillProcedureName} (IsGUID: False; DefaultValue: 'Fill'),
+ {ReverseProcedureName} (IsGUID: False; DefaultValue: 'Reverse'),
{ArrayInterfaceName} (IsGUID: False; DefaultValue: 'IJcl%sArray'),
{ArrayInterfaceGUID} (IsGUID: True; DefaultValue: ''),
{ArrayListClassName} (IsGUID: False; DefaultValue: 'TJcl%sArrayList'),
Modified: trunk/jcl/source/prototypes/JclAlgorithms.pas
===================================================================
--- trunk/jcl/source/prototypes/JclAlgorithms.pas 2012-02-20 18:48:39 UTC (rev 3737)
+++ trunk/jcl/source/prototypes/JclAlgorithms.pas 2012-02-20 20:31:00 UTC (rev 3738)
@@ -88,7 +88,7 @@
// move array algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO MOVEARRAYINT(MoveArray,, overload;)}
+{$JPPEXPANDMACRO MOVEARRAYINT(,, overload;)}
*)
{$JPPEXPANDMACRO MOVEARRAYINT(MoveArray,TDynSizeIntArray, overload;)}
{$IFNDEF FPC}
@@ -98,48 +98,48 @@
// Iterate algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO ITERATEINT(Iterate,,, overload;)}
+{$JPPEXPANDMACRO ITERATEINT(,,, overload;)}
*)
// Apply algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO APPLYINT(Apply,,, overload;)}
+{$JPPEXPANDMACRO APPLYINT(,,, overload;)}
*)
// Find algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO FINDINT(Find,,,,,, overload;)}
-{$JPPEXPANDMACRO FINDEQINT(Find,,,,,, overload;)}
+{$JPPEXPANDMACRO FINDINT(,,,,,, overload;)}
+{$JPPEXPANDMACRO FINDEQINT(,,,,,, overload;)}
*)
// CountObject algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO COUNTOBJECTINT(CountObject,,,,,, overload;)}
-{$JPPEXPANDMACRO COUNTOBJECTEQINT(CountObject,,,,,, overload;)}
+{$JPPEXPANDMACRO COUNTOBJECTINT(,,,,,, overload;)}
+{$JPPEXPANDMACRO COUNTOBJECTEQINT(,,,,,, overload;)}
*)
// Copy algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO COPYINT(Copy,, overload;)}
+{$JPPEXPANDMACRO COPYINT(,, overload;)}
*)
// Generate algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO GENERATEINT(Generate,,,,, overload;)}
+{$JPPEXPANDMACRO GENERATEINT(,,,,, overload;)}
*)
// Fill algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO FILLINT(Fill,,,,, overload;)}
+{$JPPEXPANDMACRO FILLINT(,,,,, overload;)}
*)
// Reverse algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO REVERSEINT(Reverse,, overload;)}
+{$JPPEXPANDMACRO REVERSEINT(,, overload;)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO SORTINT(QuickSort,,,,, overload;)}
+{$JPPEXPANDMACRO QUICKSORTINT(,,,,, overload;)}
*)
var
@@ -160,7 +160,7 @@
// Sort algorithms
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO SORTINT(Sort,,First,Last,, overload;)}
+{$JPPEXPANDMACRO SORTINT(,,First,Last,, overload;)}
*)
{$IFDEF SUPPORTS_GENERICS}
@@ -869,43 +869,43 @@
{$ENDIF ~FPC}
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO ITERATEIMP(Iterate,,)}
+{$JPPEXPANDMACRO ITERATEIMP(,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO APPLYIMP(Apply,,,)}
+{$JPPEXPANDMACRO APPLYIMP(,,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO FINDIMP(Find,,,,,)}
+{$JPPEXPANDMACRO FINDIMP(,,,,,)}
-{$JPPEXPANDMACRO FINDEQIMP(Find,,,,,)}
+{$JPPEXPANDMACRO FINDEQIMP(,,,,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO COUNTOBJECTIMP(CountObject,,,,,)}
+{$JPPEXPANDMACRO COUNTOBJECTIMP(,,,,,)}
-{$JPPEXPANDMACRO COUNTOBJECTEQIMP(CountObject,,,,,)}
+{$JPPEXPANDMACRO COUNTOBJECTEQIMP(,,,,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO COPYIMP(Copy,,)}
+{$JPPEXPANDMACRO COPYIMP(,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO GENERATEIMP(Generate,,,,)}
+{$JPPEXPANDMACRO GENERATEIMP(,,,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO FILLIMP(Fill,,,,,)}
+{$JPPEXPANDMACRO FILLIMP(,,,,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO REVERSEIMP(Reverse,,,,)}
+{$JPPEXPANDMACRO REVERSEIMP(,,,,)}
*)
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO QUICKSORTIMP(QuickSort,,,,,,,)}
+{$JPPEXPANDMACRO QUICKSORTIMP(,,,,,,,)}
*)
procedure Sort(const AList: IJclIntfList; First, Last: Integer; AComparator: TIntfCompare);
Modified: trunk/jcl/source/prototypes/containers/JclAlgorithms.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclAlgorithms.imp 2012-02-20 18:48:39 UTC (rev 3737)
+++ trunk/jcl/source/prototypes/containers/JclAlgorithms.imp 2012-02-20 20:31:00 UTC (rev 3738)
@@ -1,4 +1,4 @@
-(*$JPPDEFINEMACRO MOVEARRAYIMP(PROCNAME, DYNARRAYTYPENAME)
+(*$JPPDEFINEMACRO MOVEARRAYIMP(MOVEARRAYPROCEDURENAME, DYNARRAYTYPENAME)
{$IFDEF REFCOUNTED}
procedure FinalizeArrayBeforeMove(var List: DYNARRAYTYPENAME; FromIndex, ToIndex, Count: SizeInt); overload;
{$IFDEF SUPPORTS_INLINE} inline; {$ENDIF}
@@ -78,7 +78,7 @@
{$ENDIF ZEROINIT}
{$ENDIF ~REFCOUNTED}
-procedure PROCNAME(var List: DYNARRAYTYPENAME; FromIndex, ToIndex, Count: SizeInt); overload;
+procedure MOVEARRAYPROCEDURENAME(var List: DYNARRAYTYPENAME; FromIndex, ToIndex, Count: SizeInt); overload;
begin
if Count > 0 then
begin
@@ -88,8 +88,8 @@
{$ELSE ~REFCOUNTED}{$IFDEF ZEROINIT} InitializeArrayAfterMove(List, FromIndex, ToIndex, Count);{$ENDIF ZEROINIT}{$ENDIF ~REFCOUNTED}
end;
end;*)
-(*$JPPDEFINEMACRO ITERATEIMP(PROCNAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME)
-procedure PROCNAME(const First: ITRINTERFACENAME; Count: Integer...
[truncated message content] |
|
From: <ou...@us...> - 2012-02-20 18:48:52
|
Revision: 3737
http://jcl.svn.sourceforge.net/jcl/?rev=3737&view=rev
Author: outchy
Date: 2012-02-20 18:48:39 +0000 (Mon, 20 Feb 2012)
Log Message:
-----------
cleanup of container prototypes.
Modified Paths:
--------------
trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas
trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas
trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainer1DTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainer2DTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainerIntfTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
trunk/jcl/source/common/JclPreProcessorContainerTypes.pas
trunk/jcl/source/common/JclPreProcessorHashMapsTemplates.pas
trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas
trunk/jcl/source/common/JclPreProcessorLinkedListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas
trunk/jcl/source/common/JclPreProcessorStacksTemplates.pas
trunk/jcl/source/common/JclPreProcessorTreesTemplates.pas
trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas
trunk/jcl/source/common/JclSortedMaps.pas
trunk/jcl/source/prototypes/JclAlgorithms.pas
trunk/jcl/source/prototypes/containers/JclAlgorithms.imp
trunk/jcl/source/prototypes/containers/JclAlgorithms.int
trunk/jcl/source/prototypes/containers/JclArrayLists.imp
trunk/jcl/source/prototypes/containers/JclArrayLists.int
trunk/jcl/source/prototypes/containers/JclArraySets.imp
trunk/jcl/source/prototypes/containers/JclBinaryTrees.imp
trunk/jcl/source/prototypes/containers/JclBinaryTrees.int
trunk/jcl/source/prototypes/containers/JclContainerIntf.int
trunk/jcl/source/prototypes/containers/JclHashSets.imp
trunk/jcl/source/prototypes/containers/JclHashSets.int
trunk/jcl/source/prototypes/containers/JclLinkedLists.imp
trunk/jcl/source/prototypes/containers/JclLinkedLists.int
trunk/jcl/source/prototypes/containers/JclQueues.imp
trunk/jcl/source/prototypes/containers/JclStacks.imp
trunk/jcl/source/prototypes/containers/JclTrees.imp
trunk/jcl/source/prototypes/containers/JclTrees.int
trunk/jcl/source/prototypes/containers/JclVectors.imp
trunk/jcl/source/prototypes/containers/JclVectors.int
Modified: trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorAlgorithmsTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -83,7 +83,7 @@
property DynArrayTypeName: string index taDynArrayTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* ITERATEINT(PROCNAME, ITRINTERFACENAME, CALLBACKTYPE, OVERLOAD) *)
+ (* ITERATEINT(PROCNAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME, OVERLOAD) *)
TJclIterateIntParams = class(TJclAlgorithmsIntProcParams)
protected
function GetProcName: string; override;
@@ -91,18 +91,18 @@
property Overload;
property ProcName;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taIterateProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
+ property IterateProcedureTypeName: string index taIterateProcedureTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* ITERATEIMP(PROCNAME, ITRINTERFACENAME, CALLBACKTYPE) *)
+ (* ITERATEIMP(PROCNAME, ITRINTERFACENAME, ITERATEPROCEDURETYPENAME) *)
TJclIterateImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taIterateProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
+ property IterateProcedureTypeName: string index taIterateProcedureTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* APPLYINT(PROCNAME, ITRINTERFACENAME, CALLBACKTYPE, OVERLOAD) *)
+ (* APPLYINT(PROCNAME, ITRINTERFACENAME, APPLYFUNCTIONTYPENAME, OVERLOAD) *)
TJclApplyIntParams = class(TJclAlgorithmsIntProcParams)
protected
function GetProcName: string; override;
@@ -110,16 +110,16 @@
property Overload;
property ProcName;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taApplyFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ApplyFunctionTypeName: string index taApplyFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* APPLYIMP(PROCNAME, ITRINTERFACENAME, CALLBACKTYPE, SETTERNAME) *)
+ (* APPLYIMP(PROCNAME, ITRINTERFACENAME, APPLYFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclApplyImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taApplyFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ApplyFunctionTypeName: string index taApplyFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* SIMPLECOMPAREINT(PROCNAME, CONSTKEYWORD, TYPENAME) *)
@@ -147,7 +147,7 @@
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE, OVERLOAD) *)
+ (* FINDINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclFindIntParams = class(TJclAlgorithmsIntProcParams)
protected
function GetProcName: string; override;
@@ -157,10 +157,10 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE) *)
+ (* FINDIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME) *)
TJclFindImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
@@ -168,7 +168,7 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* FINDEQINT(PROCNAME,ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE, OVERLOAD) *)
@@ -181,10 +181,10 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FINDEQIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE) *)
+ (* FINDEQIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME) *)
TJclFindEqImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
@@ -192,10 +192,10 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE, OVERLOAD) *)
+ (* COUNTOBJECTINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclCountObjectIntParams = class(TJclAlgorithmsIntProcParams)
protected
function GetProcName: string; override;
@@ -205,10 +205,10 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE) *)
+ (* COUNTOBJECTIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, COMPAREFUNCTIONTYPENAME) *)
TJclCountObjectImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
@@ -216,10 +216,10 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTEQINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE, OVERLOAD) *)
+ (* COUNTOBJECTEQINT(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclCountObjectEqIntParams = class(TJclAlgorithmsIntProcParams)
protected
function GetProcName: string; override;
@@ -229,10 +229,10 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COUNTOBJECTEQIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, CALLBACKTYPE) *)
+ (* COUNTOBJECTEQIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, EQUALITYCOMPAREFUNCTIONTYPENAME) *)
TJclCountObjectEqImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
@@ -240,7 +240,7 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property CallbackType: string index taEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* COPYINT(PROCNAME, ITRINTERFACENAME, OVERLOAD) *)
@@ -252,12 +252,12 @@
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COPYIMP(PROCNAME, ITRINTERFACENAME, SETTERNAME) *)
+ (* COPYIMP(PROCNAME, ITRINTERFACENAME, SETTERPROCEDURENAME) *)
TJclCopyImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* GENERATEINT(PROCNAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, OVERLOAD) *)
@@ -294,7 +294,7 @@
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* FILLIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, SETTERNAME) *)
+ (* FILLIMP(PROCNAME, ITRINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, SETTERPROCEDURENAME) *)
TJclFillImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
@@ -302,7 +302,7 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* REVERSEINT(PROCNAME, ITRINTERFACENAME, OVERLOAD) *)
@@ -314,17 +314,17 @@
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* REVERSEIMP(PROCNAME, ITRINTERFACENAME, TYPENAME, GETTERNAME, SETTERNAME) *)
+ (* REVERSEIMP(PROCNAME, ITRINTERFACENAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclReverseImpParams = class(TJclAlgorithmsImpProcParams)
published
property ProcName;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* SORTINT(PROCNAME, LISTINTERFACENAME, LEFT, RIGHT, CALLBACKTYPE, OVERLOAD) *)
+ (* SORTINT(PROCNAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, OVERLOAD) *)
TJclSortIntParams = class(TJclAlgorithmsIntProcParams)
private
FLeft: string;
@@ -340,10 +340,10 @@
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property Left: string read GetLeft write FLeft stored IsLeftStored;
property Right: string read GetRight write FRight stored IsRightStored;
- property CallbackType: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* QUICKSORTIMP(PROCNAME, LISTINTERFACENAME, LEFT, RIGHT, CALLBACKTYPE, TYPENAME, GETTERNAME, SETTERNAME) *)
+ (* QUICKSORTIMP(PROCNAME, LISTINTERFACENAME, LEFT, RIGHT, COMPAREFUNCTIONTYPENAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclQuickSortImpParams = class(TJclAlgorithmsImpProcParams)
private
function GetLeft: string;
@@ -355,10 +355,10 @@
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property Left: string read GetLeft write SetLeft stored False;
property Right: string read GetRight write SetRight stored False;
- property CallbackType: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
{$IFDEF UNITVERSIONING}
Modified: trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -45,7 +45,7 @@
FLATCONTAINERINTERFACENAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME,
ARRAYINTERFACENAME, ITRINTERFACENAME, DYNARRAYTYPE, EQUALITYCOMPARERINTERFACENAME,
INTERFACEADDITIONAL, SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION,
- CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME) *)
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclArrayListIntParams = class(TJclCollectionInterfaceParams)
protected
// function CodeUnit: string; override;
@@ -69,12 +69,12 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* JCLARRAYLISTITRINT(SELFCLASSNAME, ITRINTERFACENAME, LISTCLASSNAME, CONSTKEYWORD, PARAMETERNAME,
- TYPENAME, GETTERNAME, SETTERNAME) *)
+ TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclArrayListItrIntParams = class(TJclContainerInterfaceParams)
protected
// function CodeUnit: string; override;
@@ -87,13 +87,13 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* JCLARRAYLISTIMP(SELFCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETER, COLLECTIONINTERFACENAME,
- ITRINTERFACENAME, ITRCLASSNAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, GETTERNAME,
- SETTERNAME, RELEASERNAME, TYPENAME, DEFAULTVALUE) *)
+ (* JCLARRAYLISTIMP(SELFCLASSNAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETERNAME, COLLECTIONINTERFACENAME,
+ ITRINTERFACENAME, ITRCLASSNAME, LISTINTERFACENAME, CONSTKEYWORD, PARAMETERNAME, GETTERFUNCTIONNAME,
+ SETTERPROCEDURENAME, RELEASERFUNCTIONNAME, TYPENAME, DEFAULTVALUE) *)
TJclArrayListImpParams = class(TJclCollectionImplementationParams)
protected
// function CodeUnit: string; override;
@@ -103,23 +103,23 @@
published
property SelfClassName: string index taArrayListClassName read GetTypeAttribute write SetTypeAttribute stored False;
property OwnershipDeclaration;
- property OwnershipParameter: string index taOwnershipParameter read GetTypeAttribute write SetTypeAttribute stored False;
+ property OwnershipParameterName: string index taOwnershipParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property CollectionInterfaceName: string index taCollectionInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrInterfaceName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ItrClassName: string index taArrayIteratorClassName read GetTypeAttribute write SetTypeAttribute stored False;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property ReleaserName: string index taReleaserName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ReleaserFunctionName: string index taReleaserFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property DefaultValue: string index taDefaultValue read GetTypeAttribute write SetTypeAttribute stored False;
property MacroFooter;
end;
(* JCLARRAYLISTITRIMP(SELFCLASSNAME, ITRINTERFACENAME, LISTCLASSNAME,
- CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME) *)
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclArrayListItrImpParams = class(TJclContainerImplementationParams)
protected
// function CodeUnit: string; override;
@@ -130,8 +130,8 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
{$IFDEF UNITVERSIONING}
Modified: trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -71,7 +71,7 @@
end;
(* JCLARRAYSETIMP(SELFCLASSNAME, COLLECTIONINTERFACENAME, ITRINTERFACENAME, CONSTKEYWORD,
- PARAMETERNAME, TYPENAME, DEFAULTVALUE, GETTERNAME) *)
+ PARAMETERNAME, TYPENAME, DEFAULTVALUE, GETTERFUNCTIONNAME) *)
TJclArraySetImpParams = class(TJclCollectionImplementationParams)
protected
// function CodeUnit: string; override;
@@ -86,7 +86,7 @@
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property DefaultValue: string index taDefaultValue read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property MacroFooter;
end;
Modified: trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -72,7 +72,7 @@
property BaseContainerInterfaceName: string index taContainerInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property FlatContainerInterfaceName: string index taFlatContainerInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property CollectionInterfaceName: string index taCollectionInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property CompareFunctionName: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property EqualityComparerInterfaceName: string index taEqualityComparerInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ComparerInterfaceName: string index taComparerInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property TreeInterfaceName: string index taTreeInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -91,7 +91,7 @@
(* JCLBINARYTREEITRINT(BASEITRCLASSNAME, PREORDERITRCLASSNAME, INORDERITRCLASSNAME, POSTORDERITRCLASSNAME,
STDITRINTERFACENAME, STDTREEITRINTERFACENAME, BINTREEITRINTERFACENAME,
COLLECTIONINTERFACENAME, EQUALITYCOMPARERINTERFACENAME, NODETYPENAME,
- CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME) *)
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclBinaryTreeItrIntParams = class(TJclContainerInterfaceParams)
protected
// function CodeUnit: string; override;
@@ -111,15 +111,15 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* JCLBINARYTREEIMP(SELFCLASSNAME, NODETYPENAME, PREORDERITRCLASSNAME, INORDERITRCLASSNAME,
POSTORDERITRCLASSNAME, COLLECTIONINTERFACENAME, STDITRINTERFACENAME,
TREEITRINTERFACENAME, CONSTRUCTORPARAMETERS, CONSTRUCTORASSIGNMENTS,
- OWNERSHIPPARAMETER, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE,
- RELEASERNAME) *)
+ OWNERSHIPPARAMETERNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE,
+ RELEASERFUNCTIONNAME) *)
TJclBinaryTreeImpParams = class(TJclCollectionImplementationParams)
private
FConstructorAssignments: string;
@@ -143,12 +143,12 @@
property TreeItrInterfaceName: string index taTreeIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstructorDeclarations: string read GetConstructorDeclarations write FConstructorDeclarations;
property ConstructorAssignments: string read GetConstructorAssignments write FConstructorAssignments;
- property CompareFunctionName: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property OwnershipDeclaration;
- property OwnershipParameter: string index taOwnershipParameter read GetTypeAttribute write SetTypeAttribute stored False;
+ property OwnershipParameterName: string index taOwnershipParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
- property ReleaserName: string index taReleaserName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ReleaserFunctionName: string index taReleaserFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property DefaultValue: string index taDefaultValue read GetTypeAttribute write SetTypeAttribute stored False;
property MacroFooter;
@@ -157,7 +157,7 @@
(* JCLBINARYTREEITRIMP(BASEITRCLASSNAME, PREORDERITRCLASSNAME, INORDERITRCLASSNAME, POSTORDERITRCLASSNAME,
STDITRINTERFACENAME, COLLECTIONINTERFACENAME, EQUALITYCOMPARERINTERFACENAME,
NODETYPENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE,
- GETTERNAME, SETTERNAME, RELEASERNAME) *)
+ GETTERFUNCTIONNAME, SETTERPROCEDURENAME, RELEASERFUNCTIONNAME) *)
TJclBinaryTreeItrImpParams = class(TJclContainerImplementationParams)
protected
// function CodeUnit: string; override;
@@ -174,9 +174,9 @@
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property DefaultValue: string index taDefaultValue read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property ReleaserName: string index taReleaserName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ReleaserFunctionName: string index taReleaserFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
end;
{$IFDEF UNITVERSIONING}
@@ -228,7 +228,7 @@
begin
Result := FConstructorDeclarations;
if (Result = '') and TypeInfo.KnownType then
- Result := 'ACompare: ' + CompareFunctionName;
+ Result := 'ACompare: ' + CompareFunctionTypeName;
end;
procedure TJclBinaryTreeIntParams.ResetDefault(Value: Boolean);
@@ -260,7 +260,7 @@
begin
Result := FConstructorDeclarations;
if (Result = '') and TypeInfo.KnownType then
- Result := 'ACompare: ' + CompareFunctionName;
+ Result := 'ACompare: ' + CompareFunctionTypeName;
end;
function TJclBinaryTreeImpParams.GetConstructorParameters: string;
Modified: trunk/jcl/source/common/JclPreProcessorContainer1DTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainer1DTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorContainer1DTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -123,15 +123,15 @@
property AliasCondition: string index taAliasCondition read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property DefaultValue: string index taDefaultValue read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property OwnershipParameter: string index taOwnershipParameter read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property ReleaserName: string index taReleaserName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property OwnershipParameterName: string index taOwnershipParameterName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property ReleaserFunctionName: string index taReleaserFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property DynArrayTypeName: string index taDynArrayTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property ArrayName: string index taArrayName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property BaseContainer: string index taBaseContainer read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property BaseCollection: string index taBaseCollection read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property ArrayPropertyName: string index taArrayPropertyName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property BaseContainerClassName: string index taBaseContainerClassName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property BaseCollectionClassName: string index taBaseCollectionClassName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ContainerInterfaceName: string index taContainerInterfaceName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ContainerInterfaceGUID: string index taContainerInterfaceGUID read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property FlatContainerInterfaceName: string index taFlatContainerInterfaceName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
@@ -284,7 +284,7 @@
function TJclContainerTypeInfo.GetOwnershipDeclaration: string;
begin
- Result := GetTypeAttribute(taOwnershipParameter);
+ Result := GetTypeAttribute(taOwnershipParameterName);
if Result <> '' then
Result := Format('%s: Boolean', [Result]);
end;
@@ -400,7 +400,7 @@
begin
Result := FAncestorClassName;
if Result = '' then
- Result := TypeInfo.TypeAttributes[taBaseContainer];
+ Result := TypeInfo.TypeAttributes[taBaseContainerClassName];
end;
function TJclClassInterfaceParams.GetInterfaceAdditional: string;
@@ -432,8 +432,8 @@
Result := FAncestorClassName;
if Result = '' then
begin
- if TypeInfo.TypeAttributes[taBaseCollection] <> '' then
- Result := TypeInfo.TypeAttributes[taBaseCollection]
+ if TypeInfo.TypeAttributes[taBaseCollectionClassName] <> '' then
+ Result := TypeInfo.TypeAttributes[taBaseCollectionClassName]
else
Result := inherited GetAncestorClassName;
end;
@@ -442,7 +442,7 @@
function TJclCollectionInterfaceParams.GetCollectionFlags: string;
begin
Result := FCollectionFlags;
- if (Result = '') and (TypeInfo.TypeAttributes[taBaseCollection] <> '') then
+ if (Result = '') and (TypeInfo.TypeAttributes[taBaseCollectionClassName] <> '') then
Result := ' override;';
end;
@@ -480,7 +480,7 @@
var
Ownership, SelfClassName, ConstructorParameters: string;
begin
- if GetTypeAttribute(taOwnershipParameter) <> '' then
+ if GetTypeAttribute(taOwnershipParameterName) <> '' then
Ownership := 'False'
else
Ownership := '';
Modified: trunk/jcl/source/common/JclPreProcessorContainer2DTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainer2DTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorContainer2DTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -236,7 +236,7 @@
function TJclContainerMapInfo.GetKeyOwnershipDeclaration: string;
begin
- Result := GetKeyAttribute(kaKeyOwnershipParameter);
+ Result := GetKeyAttribute(kaKeyOwnershipParameterName);
if Result <> '' then
Result := 'AOwnsKeys: Boolean';
end;
@@ -292,7 +292,7 @@
function TJclContainerMapInfo.GetValueOwnershipDeclaration: string;
begin
- Result := GetValueAttribute(vaValueOwnershipParameter);
+ Result := GetValueAttribute(vaValueOwnershipParameterName);
if Result <> '' then
Result := 'AOwnsValues: Boolean';
end;
@@ -574,7 +574,7 @@
Result := FCreateKeySet;
if Result = '' then
begin
- if MapInfo.KeyTypeInfo.TypeAttributes[taOwnershipParameter] <> '' then
+ if MapInfo.KeyTypeInfo.TypeAttributes[taOwnershipParameterName] <> '' then
Ownership := ', False'
else
Ownership := '';
@@ -589,7 +589,7 @@
Result := FCreateValueCollection;
if Result = '' then
begin
- if MapInfo.ValueTypeInfo.TypeAttributes[taOwnershipParameter] <> '' then
+ if MapInfo.ValueTypeInfo.TypeAttributes[taOwnershipParameterName] <> '' then
Ownership := ', False'
else
Ownership := '';
@@ -606,16 +606,16 @@
if (Result = '') and MapInfo.KnownMap then
begin
- if GetKeyAttribute(kaKeyOwnershipParameter) <> '' then
+ if GetKeyAttribute(kaKeyOwnershipParameterName) <> '' then
begin
- if GetValueAttribute(vaValueOwnershipParameter) <> '' then
+ if GetValueAttribute(vaValueOwnershipParameterName) <> '' then
Ownership := 'False, False'
else
Ownership := 'False';
end
else
begin
- if GetValueAttribute(vaValueOwnershipParameter) <> '' then
+ if GetValueAttribute(vaValueOwnershipParameterName) <> '' then
Ownership := 'False'
else
Ownership := '';
Modified: trunk/jcl/source/common/JclPreProcessorContainerIntfTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainerIntfTemplates.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorContainerIntfTemplates.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -66,101 +66,101 @@
function GetAncestorName: string; override;
end;
- (* ITERPROCEDURE(PROCNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ (* ITERPROCEDURE(ITERATEPROCEDURETYPENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclIterProcedureParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
- property ProcName: string index taIterateProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property IterateProcedureTypeName: string index taIterateProcedureTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* APPLYFUNCTION(FUNCNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ (* APPLYFUNCTION(APPLYFUNCTIONTYPENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclApplyFunctionParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
- property FuncName: string index taApplyFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property ApplyFunctionTypeName: string index taApplyFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COMPAREFUNCTION(FUNCNAME, CONSTKEYWORD, TYPENAME) *)
+ (* COMPAREFUNCTION(COMPAREFUNCTIONTYPENAME, CONSTKEYWORD, TYPENAME) *)
TJclCompareFunctionParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
- property FuncName: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* EQUALITYCOMPAREFUNCTION(FUNCNAME, CONSTKEYWORD, TYPENAME) *)
+ (* EQUALITYCOMPAREFUNCTION(EQUALITYCOMPAREFUNCTIONTYPENAME, CONSTKEYWORD, TYPENAME) *)
TJclEqualityCompareFunctionParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
- property FuncName: string index taEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* HASHFUNCTION(FUNCNAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ (* HASHFUNCTION(HASHCONVERTFUNCTIONTYPENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclHashFunctionParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
- property FuncName: string index taHashConvertFunctionName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property HashConvertFunctionTypeName: string index taHashConvertFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* SORTPROC(PROCNAME, LISTINTERFACENAME, COMPAREFUNCNAME) *)
+ (* SORTPROC(SORTPROCEDURETYPENAME, LISTINTERFACENAME, COMPAREFUNCTIONTYPENAME) *)
TJclSortFunctionParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
- property ProcName: string index taSortProcedureName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
+ property SortProcedureTypeName: string index taSortProcedureTypeName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ListInterfaceName: string index taListInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
- property CompareFuncName: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* EQUALITYCOMPARER(INTERFACENAME, GUID, EQUALITYCOMPARETYPENAME, CONSTKEYWORD, TYPENAME) *)
+ (* EQUALITYCOMPARER(INTERFACENAME, GUID, EQUALITYCOMPAREFUNCTIONTYPENAME, CONSTKEYWORD, TYPENAME) *)
TJclEqualityComparerParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
property InterfaceName: string index taEqualityComparerInterfaceName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property GUID: string index taEqualityComparerInterfaceGUID read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property EqualityCompareTypeName: string index taEqualityCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property EqualityCompareFunctionTypeName: string index taEqualityCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* COMPARER(INTERFACENAME, GUID, COMPARETYPENAME, CONSTKEYWORD, TYPENAME) *)
+ (* COMPARER(INTERFACENAME, GUID, COMPAREFUNCTIONTYPENAME, CONSTKEYWORD, TYPENAME) *)
TJclComparerParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
property InterfaceName: string index taComparerInterfaceName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property GUID: string index taComparerInterfaceGUID read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property CompareTypeName: string index taCompareFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property CompareFunctionTypeName: string index taCompareFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* HASHCONVERTER(INTERFACENAME, GUID, HASHCONVERTTYPENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ (* HASHCONVERTER(INTERFACENAME, GUID, HASHCONVERTFUNCTIONTYPENAME, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclHashConverterParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
property InterfaceName: string index taHashConverterInterfaceName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property GUID: string index taHashConverterInterfaceGUID read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property HashConvertTypeName: string index taHashConvertFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property HashConvertFunctionTypeName: string index taHashConvertFunctionTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -176,7 +176,7 @@
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* OWNER(INTERFACENAME, ANCESTORNAME, GUID, RELEASERNAME, RELEASEEVENTNAME, RELEASEEVENTTYPENAME, PARAMETERNAME, TYPENAME, OWNERADDITIONAL) *)
+ (* OWNER(INTERFACENAME, ANCESTORNAME, GUID, RELEASERFUNCTIONNAME, RELEASEEVENTNAME, RELEASEEVENTTYPENAME, PARAMETERNAME, TYPENAME, OWNERADDITIONAL) *)
TJclOwnerParams = class(TJclContainerIntfAncestorParams)
protected
FOwnerAdditional: string;
@@ -188,7 +188,7 @@
property InterfaceName: string index taOwnershipInterfaceName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property AncestorName;
property GUID: string index taOwnershipInterfaceGUID read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
- property ReleaserName: string index taReleaserName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ReleaserFunctionName: string index taReleaserFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
property ReleaseEventName: string index taReleaseEventName read GetTypeAttribute write SetTypeAttribute stored IsTypeAttributeStored;
property ReleaseEventTypeName: string index taReleaseEventTypeName read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
@@ -196,7 +196,7 @@
property OwnerAdditional: string read GetOwnerAdditional write FOwnerAdditional;
end;
- (* ITERATOR(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME) *)
+ (* ITERATOR(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME) *)
TJclIteratorParams = class(TJclContainerIntfAncestorParams)
protected
function GetAncestorName: string; override;
@@ -209,8 +209,8 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* TREEITERATOR(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
@@ -251,7 +251,7 @@
property ItrName: string index taIteratorInterfaceName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* LIST(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME, PROPNAME) *)
+ (* LIST(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME, ARRAYPROPERTYNAME) *)
TJclListParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
@@ -264,12 +264,12 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property PropName: string index taArrayName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ArrayPropertyName: string index taArrayPropertyName read GetTypeAttribute write SetTypeAttribute stored False;
end;
- (* ARRAY(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME, PROPNAME) *)
+ (* ARRAY(INTERFACENAME, ANCESTORNAME, GUID, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERFUNCTIONNAME, SETTERPROCEDURENAME, ARRAYPROPERTYNAME) *)
TJclArrayParams = class(TJclContainerIntf1DParams)
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
@@ -280,9 +280,9 @@
property ConstKeyword: string index taConstKeyword read GetTypeAttribute write SetTypeAttribute stored False;
property ParameterName: string index taParameterName read GetTypeAttribute write SetTypeAttribute stored False;
property TypeName: string index taTypeName read GetTypeAttribute write SetTypeAttribute stored False;
- property GetterName: string index taGetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property SetterName: string index taSetterName read GetTypeAttribute write SetTypeAttribute stored False;
- property PropName: string index taArrayName read GetTypeAttribute write SetTypeAttribute stored False;
+ property GetterFunctionName: string index taGetterFunctionName read GetTypeAttribute write SetTypeAttribute stored False;
+ property SetterProcedureName: string index taSetterProcedureName read GetTypeAttribute write SetTypeAttribute stored False;
+ property ArrayPropertyName: string index taArrayPropertyName read GetTypeAttribute write SetTypeAttribute stored False;
end;
(* SET(INTERFACENAME, ANCESTORNAME, GUID) *)
@@ -471,42 +471,42 @@
function TJclIterProcedureParams.AliasAttributeIDs: TAllTypeAttributeIDs;
begin
- Result := [taIterateProcedureName];
+ Result := [taIterateProcedureTypeName];
end;
//=== { TJclApplyFunctionParams } ============================================
function TJclApplyFunctionParams.AliasAttributeIDs: TAllTypeAttributeIDs;
begin
- Result := [taApplyFunctionName];
+ Result := [taApplyFunctionTypeName];
end;
//=== { TJclCompareFunctionParams } ==========================================
function TJclCompareFunctionParams.AliasAttributeIDs: TAllTypeAttributeIDs;
begin
- Result := [taCompareFunctionName];
+ Result := [taCompareFunctionTypeName];
end;
//=== { TJclEqualityCompareFunctionParams } ==================================
function TJclEqualityCompareFunctionParams.AliasAttributeIDs: TAllTypeAttributeIDs;
begin
- Result := [taEqualityCompareFunctionName];
+ Result := [taEqualityCompareFunctionTypeName];
end;
//=== { TJclHashFunctionParams } =============================================
function TJclHashFunctionParams.AliasAttributeIDs: TAllTypeAttributeIDs;
begin
- Result := [taHashConvertFunctionName];
+ Result := [taHashConvertFunctionTypeName];
end;
//=== { TJclSortFunctionParams } =============================================
function TJclSortFunctionParams.AliasAttributeIDs: TAllTypeAttributeIDs;
begin
- Result := [taSortProcedureName];
+ Result := [taSortProcedureTypeName];
end;
//=== { TJclEqualityComparerParams } =========================================
Modified: trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas 2012-02-19 21:46:05 UTC (rev 3736)
+++ trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas 2012-02-20 18:48:39 UTC (rev 3737)
@@ -48,26 +48,26 @@
{taAliasCondition} '',
{taDefaultValue} 'nil',
{taConstKeyword} 'const ',
- {taOwnershipParameter} '',
+ {taOwnershipParameterName} '',
{taOwnershipInterfaceName} 'IJclIntfOwner',
{taOwnershipInterfaceGUID} '{17C1D3FB-BB32-48F2-BD1C-D43EA05A86A8}',
- {taReleaserName} 'FreeObject',
+ {taReleaserFunctionName} 'FreeObject',
{taReleaseEventName} 'OnFreeObject',
{taReleaseEventTypeName} 'TFreeIntfEvent',
- {taGetterName} 'GetObject',
- {taSetterName} 'SetObject',
+ ...
[truncated message content] |
|
From: <ou...@us...> - 2012-02-19 21:46:11
|
Revision: 3736
http://jcl.svn.sourceforge.net/jcl/?rev=3736&view=rev
Author: outchy
Date: 2012-02-19 21:46:05 +0000 (Sun, 19 Feb 2012)
Log Message:
-----------
cleanup.
Modified Paths:
--------------
trunk/jcl/source/prototypes/JclHashMaps.pas
Modified: trunk/jcl/source/prototypes/JclHashMaps.pas
===================================================================
--- trunk/jcl/source/prototypes/JclHashMaps.pas 2012-02-19 21:43:22 UTC (rev 3735)
+++ trunk/jcl/source/prototypes/JclHashMaps.pas 2012-02-19 21:46:05 UTC (rev 3736)
@@ -65,7 +65,6 @@
(*$JPPEXPANDMACRO JCLHASHMAPTYPESINT(TJclHashEntry<TKey\,TValue>,TJclBucket<TKey\,TValue>,TKey,TValue)*)
(*$JPPEXPANDMACRO JCLHASHMAPINT(TBucket,TJclHashMap<TKey\,TValue>,TJclAbstractContainerBase,IJclMap<TKey\,TValue>,IJclSet<TKey>,IJclCollection<TValue>, IJclPairOwner<TKey\, TValue>\,,
-
protected
type
TBucket = TJclBucket<TKey\,TValue>;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-19 21:43:32
|
Revision: 3735
http://jcl.svn.sourceforge.net/jcl/?rev=3735&view=rev
Author: outchy
Date: 2012-02-19 21:43:22 +0000 (Sun, 19 Feb 2012)
Log Message:
-----------
refactoring of container interfaces: all types to have base container and flat container interface types.
Modified Paths:
--------------
trunk/jcl/source/common/JclAbstractContainers.pas
trunk/jcl/source/common/JclArrayLists.pas
trunk/jcl/source/common/JclArraySets.pas
trunk/jcl/source/common/JclBinaryTrees.pas
trunk/jcl/source/common/JclContainerIntf.pas
trunk/jcl/source/common/JclHashMaps.pas
trunk/jcl/source/common/JclHashSets.pas
trunk/jcl/source/common/JclLinkedLists.pas
trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas
trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainer1DTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainer2DTemplates.pas
trunk/jcl/source/common/JclPreProcessorContainerKnownMaps.pas
trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas
trunk/jcl/source/common/JclPreProcessorLinkedListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas
trunk/jcl/source/common/JclPreProcessorStacksTemplates.pas
trunk/jcl/source/common/JclPreProcessorTreesTemplates.pas
trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas
trunk/jcl/source/common/JclQueues.pas
trunk/jcl/source/common/JclSortedMaps.pas
trunk/jcl/source/common/JclStacks.pas
trunk/jcl/source/common/JclTrees.pas
trunk/jcl/source/common/JclVectors.pas
trunk/jcl/source/prototypes/JclArrayLists.pas
trunk/jcl/source/prototypes/JclArraySets.pas
trunk/jcl/source/prototypes/JclBinaryTrees.pas
trunk/jcl/source/prototypes/JclContainerIntf.pas
trunk/jcl/source/prototypes/JclHashSets.pas
trunk/jcl/source/prototypes/JclLinkedLists.pas
trunk/jcl/source/prototypes/JclQueues.pas
trunk/jcl/source/prototypes/JclStacks.pas
trunk/jcl/source/prototypes/JclTrees.pas
trunk/jcl/source/prototypes/JclVectors.pas
trunk/jcl/source/prototypes/containers/JclArrayLists.int
trunk/jcl/source/prototypes/containers/JclArraySets.int
trunk/jcl/source/prototypes/containers/JclBinaryTrees.int
trunk/jcl/source/prototypes/containers/JclContainerIntf.int
trunk/jcl/source/prototypes/containers/JclHashSets.int
trunk/jcl/source/prototypes/containers/JclLinkedLists.int
trunk/jcl/source/prototypes/containers/JclQueues.int
trunk/jcl/source/prototypes/containers/JclStacks.int
trunk/jcl/source/prototypes/containers/JclTrees.int
trunk/jcl/source/prototypes/containers/JclVectors.int
Modified: trunk/jcl/source/common/JclAbstractContainers.pas
===================================================================
--- trunk/jcl/source/common/JclAbstractContainers.pas 2012-02-19 17:53:42 UTC (rev 3734)
+++ trunk/jcl/source/common/JclAbstractContainers.pas 2012-02-19 21:43:22 UTC (rev 3735)
@@ -170,7 +170,8 @@
end;
TJclIntfAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclIntfOwner, IJclIntfEqualityComparer, IJclIntfComparer, IJclIntfHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclIntfContainer,
+ IJclIntfOwner, IJclIntfEqualityComparer, IJclIntfComparer, IJclIntfHashConverter)
protected
FEqualityCompare: TIntfEqualityCompare;
FCompare: TIntfCompare;
@@ -201,20 +202,20 @@
end;
TJclStrAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclStrContainer)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclStrBaseContainer)
protected
FCaseSensitive: Boolean;
procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- { IJclStrContainer }
+ { IJclStrBaseContainer }
function GetCaseSensitive: Boolean; virtual;
procedure SetCaseSensitive(Value: Boolean); virtual;
property CaseSensitive: Boolean read GetCaseSensitive write SetCaseSensitive;
end;
TJclAnsiStrAbstractContainer = class(TJclStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclAnsiStrOwner, IJclStrContainer, IJclAnsiStrContainer,
- IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclAnsiStrHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclStrBaseContainer, IJclAnsiStrContainer,
+ IJclAnsiStrOwner, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclAnsiStrHashConverter)
protected
FEncoding: TJclAnsiStrEncoding;
FEqualityCompare: TAnsiStrEqualityCompare;
@@ -250,8 +251,8 @@
end;
TJclWideStrAbstractContainer = class(TJclStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclWideStrOwner, IJclStrContainer, IJclWideStrContainer,
- IJclWideStrEqualityComparer, IJclWideStrComparer, IJclWideStrHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclStrBaseContainer, IJclWideStrContainer,
+ IJclWideStrOwner, IJclWideStrEqualityComparer, IJclWideStrComparer, IJclWideStrHashConverter)
protected
FEncoding: TJclWideStrEncoding;
FEqualityCompare: TWideStrEqualityCompare;
@@ -288,8 +289,8 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrAbstractContainer = class(TJclStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclUnicodeStrOwner, IJclStrContainer, IJclUnicodeStrContainer,
- IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclUnicodeStrHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclStrBaseContainer, IJclUnicodeStrContainer,
+ IJclUnicodeStrOwner, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclUnicodeStrHashConverter)
protected
FEqualityCompare: TUnicodeStrEqualityCompare;
FCompare: TUnicodeStrCompare;
@@ -321,8 +322,8 @@
{$ENDIF SUPPORTS_UNICODE_STRING}
TJclSingleAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclSingleOwner, IJclSingleContainer, IJclSingleEqualityComparer,
- IJclSingleComparer, IJclSingleHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclSingleContainer,
+ IJclSingleOwner, IJclSingleEqualityComparer, IJclSingleComparer, IJclSingleHashConverter)
protected
FPrecision: Single;
FEqualityCompare: TSingleEqualityCompare;
@@ -358,8 +359,8 @@
end;
TJclDoubleAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclDoubleOwner, IJclDoubleContainer, IJclDoubleEqualityComparer,
- IJclDoubleComparer, IJclDoubleHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclDoubleContainer,
+ IJclDoubleOwner, IJclDoubleEqualityComparer, IJclDoubleComparer, IJclDoubleHashConverter)
protected
FPrecision: Double;
FEqualityCompare: TDoubleEqualityCompare;
@@ -395,8 +396,8 @@
end;
TJclExtendedAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclExtendedOwner, IJclExtendedContainer, IJclExtendedEqualityComparer,
- IJclExtendedComparer, IJclExtendedHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclExtendedContainer,
+ IJclExtendedOwner, IJclExtendedEqualityComparer, IJclExtendedComparer, IJclExtendedHashConverter)
protected
FPrecision: Extended;
FEqualityCompare: TExtendedEqualityCompare;
@@ -432,8 +433,8 @@
end;
TJclIntegerAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclIntegerOwner, IJclIntegerEqualityComparer, IJclIntegerComparer,
- IJclIntegerHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclIntegerContainer,
+ IJclIntegerOwner, IJclIntegerEqualityComparer, IJclIntegerComparer, IJclIntegerHashConverter)
protected
FEqualityCompare: TIntegerEqualityCompare;
FCompare: TIntegerCompare;
@@ -464,8 +465,8 @@
end;
TJclCardinalAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclCardinalOwner, IJclCardinalEqualityComparer, IJclCardinalComparer,
- IJclCardinalHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclCardinalContainer,
+ IJclCardinalOwner, IJclCardinalEqualityComparer, IJclCardinalComparer, IJclCardinalHashConverter)
protected
FEqualityCompare: TCardinalEqualityCompare;
FCompare: TCardinalCompare;
@@ -496,8 +497,8 @@
end;
TJclInt64AbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclInt64Owner, IJclInt64EqualityComparer, IJclInt64Comparer,
- IJclInt64HashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclInt64Container,
+ IJclInt64Owner, IJclInt64EqualityComparer, IJclInt64Comparer, IJclInt64HashConverter)
protected
FEqualityCompare: TInt64EqualityCompare;
FCompare: TInt64Compare;
@@ -528,7 +529,8 @@
end;
TJclPtrAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclPtrOwner, IJclPtrEqualityComparer, IJclPtrComparer, IJclPtrHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclPtrContainer,
+ IJclPtrOwner, IJclPtrEqualityComparer, IJclPtrComparer, IJclPtrHashConverter)
protected
FEqualityCompare: TPtrEqualityCompare;
FCompare: TPtrCompare;
@@ -559,8 +561,8 @@
end;
TJclAbstractContainer = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer, IJclComparer,
- IJclHashConverter)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclContainer,
+ IJclObjectOwner, IJclEqualityComparer, IJclComparer, IJclHashConverter)
protected
FOwnsObjects: Boolean;
FEqualityCompare: TEqualityCompare;
@@ -598,8 +600,8 @@
//DOM-IGNORE-BEGIN
TJclAbstractContainer<T> = class(TJclAbstractContainerBase, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
- IJclHashConverter<T>)
+ IJclCloneable, IJclIntfCloneable, IJclBaseContainer, IJclContainer<T>,
+ IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>, IJclHashConverter<T>)
protected
FOwnsItems: Boolean;
FEqualityCompare: TEqualityCompare<T>;
@@ -638,7 +640,7 @@
TJclAnsiStrAbstractCollection = class(TJclAnsiStrAbstractContainer,
{$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE} IJclCloneable, IJclIntfCloneable, IJclBaseContainer,
- IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrCollection,
+ IJclStrBaseContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrCollection,
IJclAnsiStrEqualityComparer, IJclAnsiStrComparer)
public
{ IJclAnsiStrCollection }
@@ -673,7 +675,7 @@
TJclWideStrAbstractCollection = class(TJclWideStrAbstractContainer,
{$IFDEF THREADSAFE}IJclLockable,{$ENDIF THREADSAFE} IJclCloneable, IJclIntfCloneable, IJclBaseContainer,
- IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrCollection,
+ IJclStrBaseContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrCollection,
IJclWideStrEqualityComparer, IJclWideStrComparer)
public
{ IJclWideStrCollection }
@@ -709,7 +711,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrAbstractCollection = class(TJclUnicodeStrAbstractContainer,
{$IFDEF THREADSAFE}IJclLockable,{$ENDIF THREADSAFE} IJclCloneable, IJclIntfCloneable, IJclBaseContainer,
- IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrCollection,
+ IJclStrBaseContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrCollection,
IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer)
public
{ IJclUnicodeStrCollection }
Modified: trunk/jcl/source/common/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/common/JclArrayLists.pas 2012-02-19 17:53:42 UTC (rev 3734)
+++ trunk/jcl/source/common/JclArrayLists.pas 2012-02-19 21:43:22 UTC (rev 3735)
@@ -58,8 +58,8 @@
TItrStart = (isFirst, isLast);
TJclIntfArrayList = class(TJclIntfAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclIntfEqualityComparer,
- IJclIntfCollection, IJclIntfList, IJclIntfArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclIntfEqualityComparer, IJclIntfContainer, IJclIntfFlatContainer,
+ IJclIntfCollection, IJclIntfList, IJclIntfArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -139,8 +139,8 @@
end;
TJclAnsiStrArrayList = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
- IJclAnsiStrCollection, IJclAnsiStrList, IJclAnsiStrArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclStrBaseContainer,
+ IJclAnsiStrCollection, IJclAnsiStrList, IJclAnsiStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -220,8 +220,8 @@
end;
TJclWideStrArrayList = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
- IJclWideStrCollection, IJclWideStrList, IJclWideStrArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclStrBaseContainer,
+ IJclWideStrCollection, IJclWideStrList, IJclWideStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -302,8 +302,8 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrArrayList = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
- IJclUnicodeStrCollection, IJclUnicodeStrList, IJclUnicodeStrArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclStrBaseContainer,
+ IJclUnicodeStrCollection, IJclUnicodeStrList, IJclUnicodeStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -406,8 +406,8 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleArrayList = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer,
- IJclSingleCollection, IJclSingleList, IJclSingleArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer, IJclSingleFlatContainer,
+ IJclSingleCollection, IJclSingleList, IJclSingleArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -487,8 +487,8 @@
end;
TJclDoubleArrayList = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer,
- IJclDoubleCollection, IJclDoubleList, IJclDoubleArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer, IJclDoubleFlatContainer,
+ IJclDoubleCollection, IJclDoubleList, IJclDoubleArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -568,8 +568,8 @@
end;
TJclExtendedArrayList = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer,
- IJclExtendedCollection, IJclExtendedList, IJclExtendedArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer, IJclExtendedFlatContainer,
+ IJclExtendedCollection, IJclExtendedList, IJclExtendedArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -669,8 +669,8 @@
{$ENDIF MATH_EXTENDED_PRECISION}
TJclIntegerArrayList = class(TJclIntegerAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclIntegerEqualityComparer,
- IJclIntegerCollection, IJclIntegerList, IJclIntegerArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclIntegerEqualityComparer, IJclIntegerContainer, IJclIntegerFlatContainer,
+ IJclIntegerCollection, IJclIntegerList, IJclIntegerArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -750,8 +750,8 @@
end;
TJclCardinalArrayList = class(TJclCardinalAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclCardinalEqualityComparer,
- IJclCardinalCollection, IJclCardinalList, IJclCardinalArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclCardinalEqualityComparer, IJclCardinalContainer, IJclCardinalFlatContainer,
+ IJclCardinalCollection, IJclCardinalList, IJclCardinalArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -831,8 +831,8 @@
end;
TJclInt64ArrayList = class(TJclInt64AbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclInt64EqualityComparer,
- IJclInt64Collection, IJclInt64List, IJclInt64Array)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclInt64EqualityComparer, IJclInt64Container, IJclInt64FlatContainer,
+ IJclInt64Collection, IJclInt64List, IJclInt64Array)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -912,8 +912,8 @@
end;
TJclPtrArrayList = class(TJclPtrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclPtrEqualityComparer,
- IJclPtrCollection, IJclPtrList, IJclPtrArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclPtrEqualityComparer, IJclPtrContainer, IJclPtrFlatContainer,
+ IJclPtrCollection, IJclPtrList, IJclPtrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -993,8 +993,8 @@
end;
TJclArrayList = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclObjectOwner,
- IJclCollection, IJclList, IJclArray)
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclContainer, IJclFlatContainer, IJclObjectOwner,
+ IJclCollection, IJclList, IJclArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
private
@@ -1080,9 +1080,8 @@
TJclArrayIterator<T> = class;
TJclArrayList<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer<T>, IJclItemOwner<T>,
- IJclCollection<T>, IJclList<T>, IJclArray<T>)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer<T>, IJclContainer<T>, IJclFlatContainer<T>, IJclItemOwner<T>,
+ IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
type
TDynArray = array of T;
Modified: trunk/jcl/source/common/JclArraySets.pas
===================================================================
--- trunk/jcl/source/common/JclArraySets.pas 2012-02-19 17:53:42 UTC (rev 3734)
+++ trunk/jcl/source/common/JclArraySets.pas 2012-02-19 21:43:22 UTC (rev 3735)
@@ -57,7 +57,8 @@
type
TJclIntfArraySet = class(TJclIntfArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclIntfEqualityComparer, IJclIntfComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfContainer, IJclIntfFlatContainer, IJclIntfEqualityComparer, IJclIntfComparer,
IJclIntfCollection, IJclIntfList, IJclIntfArray, IJclIntfSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -77,7 +78,8 @@
end;
TJclAnsiStrArraySet = class(TJclAnsiStrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclStrBaseContainer,
IJclAnsiStrCollection, IJclAnsiStrList, IJclAnsiStrArray, IJclAnsiStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -97,7 +99,8 @@
end;
TJclWideStrArraySet = class(TJclWideStrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclWideStrComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrEqualityComparer, IJclWideStrComparer, IJclStrBaseContainer,
IJclWideStrCollection, IJclWideStrList, IJclWideStrArray, IJclWideStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -118,7 +121,8 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrArraySet = class(TJclUnicodeStrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclStrBaseContainer,
IJclUnicodeStrCollection, IJclUnicodeStrList, IJclUnicodeStrArray, IJclUnicodeStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -149,7 +153,8 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleArraySet = class(TJclSingleArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleComparer, IJclSingleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclSingleContainer, IJclSingleFlatContainer, IJclSingleEqualityComparer, IJclSingleComparer,
IJclSingleCollection, IJclSingleList, IJclSingleArray, IJclSingleSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -169,7 +174,8 @@
end;
TJclDoubleArraySet = class(TJclDoubleArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleComparer, IJclDoubleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclDoubleContainer, IJclDoubleFlatContainer, IJclDoubleEqualityComparer, IJclDoubleComparer,
IJclDoubleCollection, IJclDoubleList, IJclDoubleArray, IJclDoubleSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -189,7 +195,8 @@
end;
TJclExtendedArraySet = class(TJclExtendedArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedComparer, IJclExtendedContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclExtendedContainer, IJclExtendedFlatContainer, IJclExtendedEqualityComparer, IJclExtendedComparer,
IJclExtendedCollection, IJclExtendedList, IJclExtendedArray, IJclExtendedSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -219,7 +226,8 @@
{$ENDIF MATH_EXTENDED_PRECISION}
TJclIntegerArraySet = class(TJclIntegerArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclIntegerEqualityComparer, IJclIntegerComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntegerContainer, IJclIntegerFlatContainer, IJclIntegerEqualityComparer, IJclIntegerComparer,
IJclIntegerCollection, IJclIntegerList, IJclIntegerArray, IJclIntegerSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -239,7 +247,8 @@
end;
TJclCardinalArraySet = class(TJclCardinalArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclCardinalEqualityComparer, IJclCardinalComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclCardinalContainer, IJclCardinalFlatContainer, IJclCardinalEqualityComparer, IJclCardinalComparer,
IJclCardinalCollection, IJclCardinalList, IJclCardinalArray, IJclCardinalSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -259,7 +268,8 @@
end;
TJclInt64ArraySet = class(TJclInt64ArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclInt64EqualityComparer, IJclInt64Comparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclInt64Container, IJclInt64FlatContainer, IJclInt64EqualityComparer, IJclInt64Comparer,
IJclInt64Collection, IJclInt64List, IJclInt64Array, IJclInt64Set)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -279,7 +289,8 @@
end;
TJclPtrArraySet = class(TJclPtrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclPtrEqualityComparer, IJclPtrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclPtrContainer, IJclPtrFlatContainer, IJclPtrEqualityComparer, IJclPtrComparer,
IJclPtrCollection, IJclPtrList, IJclPtrArray, IJclPtrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -299,7 +310,8 @@
end;
TJclArraySet = class(TJclArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclComparer, IJclObjectOwner,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclContainer, IJclFlatContainer, IJclEqualityComparer, IJclComparer, IJclObjectOwner,
IJclCollection, IJclList, IJclArray, IJclSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -323,7 +335,8 @@
//DOM-IGNORE-BEGIN
TJclArraySet<T> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer<T>, IJclComparer<T>,IJclItemOwner<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclContainer<T>, IJclFlatContainer<T>, IJclEqualityComparer<T>, IJclComparer<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
private
function BinarySearch(const AItem: T): Integer;
Modified: trunk/jcl/source/common/JclBinaryTrees.pas
===================================================================
--- trunk/jcl/source/common/JclBinaryTrees.pas 2012-02-19 17:53:42 UTC (rev 3734)
+++ trunk/jcl/source/common/JclBinaryTrees.pas 2012-02-19 21:43:22 UTC (rev 3735)
@@ -64,7 +64,8 @@
end;
TJclIntfBinaryTree = class(TJclIntfAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclIntfEqualityComparer, IJclIntfComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclIntfEqualityComparer, IJclIntfComparer, IJclIntfContainer, IJclIntfFlatContainer,
IJclIntfCollection, IJclIntfTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -196,7 +197,8 @@
end;
TJclAnsiStrBinaryTree = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclStrBaseContainer,
IJclAnsiStrCollection, IJclAnsiStrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -328,7 +330,8 @@
end;
TJclWideStrBinaryTree = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclWideStrComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclWideStrEqualityComparer, IJclWideStrComparer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclStrBaseContainer,
IJclWideStrCollection, IJclWideStrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -463,7 +466,8 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrBinaryTree = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclStrBaseContainer,
IJclUnicodeStrCollection, IJclUnicodeStrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -637,7 +641,8 @@
end;
TJclSingleBinaryTree = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleComparer, IJclSingleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclSingleEqualityComparer, IJclSingleComparer, IJclSingleContainer, IJclSingleFlatContainer,
IJclSingleCollection, IJclSingleTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -769,7 +774,8 @@
end;
TJclDoubleBinaryTree = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleComparer, IJclDoubleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclDoubleEqualityComparer, IJclDoubleComparer, IJclDoubleContainer, IJclDoubleFlatContainer,
IJclDoubleCollection, IJclDoubleTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -901,7 +907,8 @@
end;
TJclExtendedBinaryTree = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedComparer, IJclExtendedContainer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclExtendedEqualityComparer, IJclExtendedComparer, IJclExtendedContainer, IJclExtendedFlatContainer,
IJclExtendedCollection, IJclExtendedTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1072,7 +1079,8 @@
end;
TJclIntegerBinaryTree = class(TJclIntegerAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclIntegerEqualityComparer, IJclIntegerComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclIntegerEqualityComparer, IJclIntegerComparer, IJclIntegerContainer, IJclIntegerFlatContainer,
IJclIntegerCollection, IJclIntegerTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1204,7 +1212,8 @@
end;
TJclCardinalBinaryTree = class(TJclCardinalAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclCardinalEqualityComparer, IJclCardinalComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclCardinalEqualityComparer, IJclCardinalComparer, IJclCardinalContainer, IJclCardinalFlatContainer,
IJclCardinalCollection, IJclCardinalTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1336,7 +1345,8 @@
end;
TJclInt64BinaryTree = class(TJclInt64AbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclInt64EqualityComparer, IJclInt64Comparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclInt64EqualityComparer, IJclInt64Comparer, IJclInt64Container, IJclInt64FlatContainer,
IJclInt64Collection, IJclInt64Tree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1468,7 +1478,8 @@
end;
TJclPtrBinaryTree = class(TJclPtrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclPtrEqualityComparer, IJclPtrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclPtrEqualityComparer, IJclPtrComparer, IJclPtrContainer, IJclPtrFlatContainer,
IJclPtrCollection, IJclPtrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1600,7 +1611,8 @@
end;
TJclBinaryTree = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclEqualityComparer, IJclComparer, IJclObjectOwner,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclEqualityComparer, IJclComparer, IJclContainer, IJclFlatContainer, IJclObjectOwner,
IJclCollection, IJclTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1741,9 +1753,9 @@
TJclPostOrderBinaryTreeIterator<T> = class;
TJclBinaryTree<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclEqualityComparer<T>, IJclComparer<T>,IJclItemOwner<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,
+ IJclEqualityComparer<T>, IJclComparer<T>, IJclContainer<T>, IJclFlatContainer<T>,IJclItemOwner<T>,
IJclCollection<T>, IJclTree<T>)
-
protected
type
TBinaryNode = TJclBinaryNode<T>;
Modified: trunk/jcl/source/common/JclContainerIntf.pas
===================================================================
--- trunk/jcl/source/common/JclContainerIntf.pas 2012-02-19 17:53:42 UTC (rev 3734)
+++ trunk/jcl/source/common/JclContainerIntf.pas 2012-02-19 21:43:22 UTC (rev 3735)
@@ -41,6 +41,7 @@
{$I jcl.inc}
+
interface
uses
@@ -312,7 +313,15 @@
property ThreadSafe: Boolean read GetThreadSafe write SetThreadSafe;
end;
- IJclStrContainer = interface(IJclBaseContainer)
+ IJclIntfContainer = interface(IJclBaseContainer)
+ ['{44F10075-9702-4DCA-9731-D8990F234A74}']
+ end;
+
+ IJclIntfFlatContainer = interface(IJclIntfContainer)
+ ['{15116007-6BB8-4D9D-8249-C2F49D4AB3EA}']
+ end;
+
+ IJclStrBaseContainer = interface(IJclBaseContainer)
['{9753E1D7-F093-4D5C-8B32-40403F6F700E}']
function GetCaseSensitive: Boolean;
procedure SetCaseSensitive(Value: Boolean);
@@ -321,7 +330,7 @@
TJclAnsiStrEncoding = (seISO, seUTF8);
- IJclAnsiStrContainer = interface(IJclStrContainer)
+ IJclAnsiStrContainer = interface(IJclStrBaseContainer)
['{F8239357-B96F-46F1-A48E-B5DF25B5F1FA}']
function GetEncoding: TJclAnsiStrEncoding;
procedure SetEncoding(Value: TJclAnsiStrEncoding);
@@ -342,7 +351,7 @@
TJclWideStrEncoding = (seUTF16);
- IJclWideStrContainer = interface(IJclStrContainer)
+ IJclWideStrContainer = interface(IJclStrBaseContainer)
['{875E1AC4-CA22-46BC-8999-048E5B9BF11D}']
function GetEncoding: TJclWideStrEncoding;
procedure SetEncoding(Value: TJclWideStrEncoding);
@@ -362,7 +371,7 @@
end;
{$IFDEF SUPPORTS_UNICODE_STRING}
- IJclUnicodeStrContainer = interface(IJclStrContainer)
+ IJclUnicodeStrContainer = interface(IJclStrBaseContainer)
['{619BA29F-5E05-464D-B472-1C8453DBC707}']
end;
@@ -379,6 +388,19 @@
end;
{$ENDIF SUPPORTS_UNICODE_STRING}
+ {$IFDEF CONTAINER_ANSISTR}
+ IJclStrContainer = IJclAnsiStrContainer;
+ IJclStrFlatContainer = IJclAnsiStrFlatContainer;
+ {$ENDIF CONTAINER_ANSISTR}
+ {$IFDEF CONTAINER_WIDESTR}
+ IJclStrContainer = IJclWideStrContainer;
+ IJclStrFlatContainer = IJclWideStrFlatContainer;
+ {$ENDIF CONTAINER_WIDESTR}
+ {$IFDEF CONTAINER_UNICODESTR}
+ IJclStrContainer = IJclUnicodeStrContainer;
+ IJclStrFlatContainer = IJclUnicodeStrFlatContainer;
+ {$ENDIF CONTAINER_UNICODESTR}
+
IJclSingleContainer = interface(IJclBaseContainer)
['{22BE88BD-87D1-4B4D-9FAB-F1B6D555C6A9}']
function GetPrecision: Single;
@@ -386,6 +408,10 @@
property Precision: Single read GetPrecision write SetPrecision;
end;
+ IJclSingleFlatContainer = interface(IJclSingleContainer)
+ ['{F16955E8-94D2-4201-809B-CC2EA39B5FDD}']
+ end;
+
IJclDoubleContainer = interface(IJclBaseContainer)
['{372B9354-DF6D-4CAA-A5A9-C50E1FEE5525}']
function GetPrecision: Double;
@@ -393,6 +419,10 @@
property Precision: Double read GetPrecision write SetPrecision;
end;
+ IJclDoubleFlatContainer = interface(IJclDoubleContainer)
+ ['{2F0252CE-7471-45CA-8C8D-FD3925507C00}']
+ end;
+
IJclExtendedContainer = interface(IJclBaseContainer)
['{431A6482-FD5C-45A7-BE53-339A3CF75AC9}']
function GetPrecision: Extended;
@@ -400,16 +430,76 @@
property Precision: Extended read GetPrecision write SetPrecision;
end;
+ IJclExtendedFlatContainer = interface(IJclExtendedContainer)
+ ['{1D3F48A2-001E-48F7-8A54-B9F4CE837523}']
+ end;
+
{$IFDEF MATH_EXTENDED_PRECISION}
IJclFloatContainer = IJclExtendedContainer;
+ IJclFloatFlatContainer = IJclExtendedFlatContainer;
{$ENDIF MATH_EXTENDED_PRECISION}
{$IFDEF MATH_DOUBLE_PRECISION}
IJclFloatContainer = IJclDoubleContainer;
+ IJclFloatFlatContainer = IJclDoubleFlatContainer;
{$ENDIF MATH_DOUBLE_PRECISION}
{$IFDEF MATH_SINGLE_PRECISION}
IJclFloatContainer = IJclSingleContainer;
+ IJclFloatFlatContainer = IJclSingleFlatContainer;
{$ENDIF MATH_SINGLE_PRECISION}
+ IJclIntegerContainer = interface(IJclBaseContainer)
+ ['{3BAF5447-9835-43A4-9FF3-E5EA7D43A7D1}']
+ end;
+
+ IJclIntegerFlatContainer = interface(IJclIntegerContainer)
+ ['{EF4EFCD9-60CB-4525-9D20-18E55291F7CF}']
+ end;
+
+ IJclCardinalContainer = interface(IJclBaseContainer)
+ ['{01DF05CF-62E9-46B3-8BC1-2830EEF43644}']
+ end;
+
+ IJclCardinalFlatContainer = interface(IJclCardinalContainer)
+ ['{79E48B80-3215-47D0-A1B5-D74C495AC9D1}']
+ end;
+
+ IJclInt64Container = interface(IJclBaseContainer)
+ ['{B560B2B6-F8C7-45F0-A5E5-920AA61C1540}']
+ end;
+
+ IJclInt64FlatContainer = interface(IJclInt64Container)
+ ['{E740B9EF-7342-4CEF-B7FB-96C5267F5738}']
+ end;
+
+ IJclPtrContainer = interface(IJclBaseContainer)
+ ['{E8DD2A85-1E12-4605-B517-7E3121C5624F}']
+ end;
+
+ IJclPtrFlatContainer = interface(IJclPtrContainer)
+ ['{43C41789-DE71-4DA5-B4AC-3F53EB9459CD}']
+ end;
+
+ IJclContainer = interface(IJclBaseContainer)
+ ['{A9EBED03-4993-426A-8449-30D98DC2AC90}']
+ end;
+
+ IJclFlatContainer = interface(IJclContainer)
+ ['{0A070B6F-54A1-4B3D-A4E4-CFFAE2C7C57B}']
+ end;
+
+ {$IFDEF SUPPORTS_GENERICS}
+ //DOM-IGNORE-BEGIN
+ IJclContainer<T> = interface(IJclBaseContainer)
+ ['{19599A90-F392-430D-878D-A73E096C04AF}']
+ end;
+
+ IJclFlatContainer<T> = interface(IJclContainer<T>)
+ ['{F562ECFB-98DC-4A82-A806-ED978B9D1667}']
+ end;
+
+ //DOM-IGNORE-END
+ {$ENDIF SUPPORTS_GENERICS}
+
IJclIntfEqualityComparer = interface
['{5CC2DF51-BE56-4D02-A171-31BAAC097632}']
function GetEqualityCompare: TIntfEqualityCompare;
@@ -1778,7 +1868,7 @@
//DOM-IGNORE-END
{$ENDIF SUPPORTS_GENERICS}
- IJclIntfCollection = interface(IJclBaseContainer)
+ IJclIntfCollection = interface(IJclIntfFlatContainer)
['{8E178463-4575-487A-B4D5-DC2AED3C7ACA}']
function Add(const AInterface: IInterface): Boolean;
function AddAll(const ACollection: IJclIntfCollection): Boolean;
@@ -1878,7 +1968,7 @@
IJclStrCollection = IJclUnicodeStrCollection;
{$ENDIF CONTAINER_UNICODESTR}
- IJclSingleCollection = interface(IJclSingleContainer)
+ IJclSingleCollection = interface(IJclSingleFlatContainer)
['{1D34D474-6588-441E-B2B3-8C021A37ED89}']
function Add(const AValue: Single): Boolean;
function AddAll(const ACollection: IJclSingleCollection): Boolean;
@@ -1900,7 +1990,7 @@
{$ENDIF SUPPORTS_FOR_IN}
end;
- IJclDoubleCollection = interface(IJclDoubleContainer)
+ IJclDoubleCollection = interface(IJclDoubleFlatContainer)
['{E54C7717-C33A-4F1B-860C-4F60F303EAD3}']
function Add(const AValue: Double): Boolean;
function AddAll(const ACollection: IJclDoubleCollection): Boolean;
@@ -1922,7 +2012,7 @@
{$ENDIF SUPPORTS_FOR_IN}
end;
- IJclExtendedCollection = interface(IJclExtendedContainer)
+ IJclExtendedCollection = interface(IJclExtendedFlatContainer)
['{2A1341CB-B997-4E3B-B1CA-6D60AE853C55}']
function Add(const AValue: Extended): Boolean;
function AddAll(const ACollection: IJclExtendedCollection): Boolean;
@@ -1954,7 +2044,7 @@
IJclFloatCollection = IJclExtendedCollection;
{$ENDIF MATH_EXTENDED_PRECISION}
- IJclIntegerCollection = interface(IJclBaseContainer)
+ IJclIntegerCollection = interface(IJclIntegerFlatContainer)
['{AF69890D-22D1-4D89-8FFD-5FAD7E0638BA}']
function Add(AValue: Integer): Boolean;
function AddAll(const ACollection: IJclIntegerCollection): Boolean;
@@ -1976,7 +2066,7 @@
{$ENDIF SUPPORTS_FOR_IN}
end;
- IJclCardinalCollection = interface(IJclBaseContainer)
+ IJclCardinalCollection = interface(IJclCardinalFlatContainer)
['{CFBD0344-58C8-4FA2-B4D7-D21D77DFBF80}']
function Add(AValue: Cardinal): Boolean;
function AddAll(const ACollection: IJclCardinalCollection): Boolean;
@@ -1998,7 +2088,7 @@
{$ENDIF SUPPORTS_FOR_IN}
end;
- IJclInt64Collection = interface(IJclBaseContainer)
+ IJclInt64Collection = interface(IJclInt64FlatContainer)
['{93A45BDE-3C4C-48D6-9874-5322914DFDDA}']
function Add(const AValue: Int64): Boolean;
function AddAll(const ACollection: IJclInt64Collection): Boolean;
@@ -2020,7 +2110,7 @@
{$ENDIF SUPPORTS_FOR_IN}
end;
- IJclPtrCollection = interface(IJclBaseContainer)
+ IJclPtrCollection = interface(IJclPtrFlatContainer)
['{02E909A7-5B1D-40D4-82EA-A0CD97D5C811}']
function Add(APtr: Pointer): Boolean;
function AddAll(const ACollection: IJclPtrCollection): Boolean;
@@ -2042,7 +2132,7 @@
{$ENDIF SUPPORTS_FOR_IN}
end;
- IJclCollection = interface(IJclBaseContainer)
+ IJclCollection = interface(IJclFlatContainer)
['{58947EF1-CD21-4DD1-AE3D-225C3AAD7EE5}']
function Add(AObject: TObject): Boolean;
function AddAll(const ACollection: IJclCollection): Boolean;
@@ -3707,7 +3797,7 @@
//DOM-IGNORE-END
{$ENDIF SUPPORTS_GENERICS}
- IJclIntfQueue = interface(IJclBaseContainer)
+ IJclIntfQueue = interface(IJclIntfContainer)
['{B88756FE-5553-4106-957E-3E33120BFA99}']
procedure Clear;
function Contains(const AInterface: IInterface): Boolean;
@@ -3806,7 +3896,7 @@
IJclFloatQueue = IJclExtendedQueue;
{$ENDIF MATH_EXTENDED_PRECISION}
- IJclIntegerQueue = interface(IJclBaseContainer)
+ IJclIntegerQueue = interface(IJclIntegerContainer)
['{4C4E174E-5D19-44CE-A248-B5589A9B68DF}']
procedure Clear;
function Contains(AValue: Integer): Boolean;
@@ -3817,7 +3907,7 @@
function Size: Integer;
end;
- IJclCardinalQueue = interface(IJclBaseContainer)
+ IJclCardinalQueue = interface(IJclCardinalContainer)
['{CC1D4358-E259-4FB0-BA83-5180A0F8A6C0}']
procedure Clear;
function Contains(AValue: Cardinal): Boolean;
@@ -3828,7 +3918,7 @@
function Size: Integer;
end;
- IJclInt64Queue = interface(IJclBaseContainer)
+ IJclInt64Queue = interface(IJclInt64Container)
['{96B620BB-9A90-43D5-82A7-2D818A11C8E1}']
procedure Clear;
function Contains(const AValue: Int64): Boolean;
@@ -3839,7 +3929,7 @@
function Size: Integer;
end;
- IJclPtrQueue = interface(IJclBaseContainer)
+ IJclPtrQueue = interface(IJclPtrContainer)
['{1052DD37-3035-4C44-A793-54AC4B9C0B29}']
procedure Clear;
function Contains(APtr: Pointer): Boolean;
@@ -3850,7 +3940,7 @@
function Size: Integer;
end;
- IJclQueue = interface(IJclBaseContainer)
+ IJclQueue = interface(IJclContainer)
['{7D0F9DE4-71EA-46EF-B879-88BCFD5D9610}']
procedure Clear;
function Contains(AObject: TObject): Boolean;
@@ -4485,7 +4575,7 @@
//DOM-IGNORE-END
{$ENDIF SUPPORTS_GENERICS}
- IJclIntfStack = interface(IJclBaseContainer)
+ IJclIntfStack = interface(IJclIntfContainer)
['{CA1DC7A1-8D8F-4A5D-81D1-0FE32E9A4E84}']
procedure Clear;
function Contains(const AInterface: IInterface): Boolean;
@@ -4584,7 +4674,7 @@
IJclFloatStack = IJclExtendedStack;
{$ENDIF MATH_EXTENDED_PRECISION}
- IJclIntegerStack = interface(IJclBaseContainer)
+ IJclIntegerStack = interface(IJclIntegerContainer)
['{9190BF0E-5B0C-4D6C-A107-20A933C9B56A}']
procedure Clear;
function Contains(AValue: Integer): Boolean;
@@ -4595,7 +4685,7 @@
function Size: Integer;
end;
- IJclCardinalStack = interface(IJclBaseContainer)
+ IJclCardinalStack = interface(IJclCardinalContainer)
['{94F9EDB3-602B-49CE-9990-0AFDAC556F83}']
procedure Clear;
function Contains(AValue: Cardinal): Boolean;
@@ -4606,7 +4696,7 @@
function Size: Integer;
end;
- IJclInt64Stack = interface(IJclBaseContainer)
+ IJclInt64Stack = interface(IJclInt64Container)
['{D689EB8F-2746-40E9-AD1B-7E656475FC64}']
procedure Clear;
function Contains(const AValue: Int64): Boolean;
@@ -4617,7 +4707,7 @@
function Size: Integer;
end;
- IJclPtrStack = interface(IJclBaseContainer)
+ IJclPtrStack = interface(IJclPtrContainer)
['{AD11D06C-E0E1-4EDE-AA2F-BC8BDD972B73}']
procedure Clear;
function Contains(APtr: Pointer): Boolean;
@@ -4628,7 +4718,7 @@
function Size: Integer;
end;
- IJclStack = interface(IJclBaseContainer)
+ IJclStack = interface(IJclContainer)
['{E07E0BD8-A831-41B9-B9A0-7199BD4873B9}']
procedure Clear;
function Contains(AObject: TObject): Boolean;
Modified: trunk/jcl/source/common/JclHashMaps.pas
===================================================================
--- trunk/jcl/source/common/JclHashMaps.pas 2012-02-19 17:53:42 UTC (rev 3734)
+++ trunk/jcl/source/common/JclHashMaps.pas 2012-02-19 21:43:22 UTC (rev 3735)
@@ -69,7 +69,7 @@
end;
TJclIntfIntfHashMap = class(TJclIntfAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclIntfContainer,
IJclIntfIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -120,7 +120,7 @@
end;
TJclAnsiStrIntfHashMap = class(TJclAnsiStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclAnsiStrContainer, IJclIntfContainer,
IJclAnsiStrIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -171,7 +171,7 @@
end;
TJclIntfAnsiStrHashMap = class(TJclAnsiStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclIntfContainer, IJclAnsiStrContainer,
IJclIntfAnsiStrMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -223,7 +223,7 @@
end;
TJclAnsiStrAnsiStrHashMap = class(TJclAnsiStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclAnsiStrContainer,
IJclAnsiStrAnsiStrMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -274,7 +274,7 @@
end;
TJclWideStrIntfHashMap = class(TJclWideStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclWideStrContainer, IJclIntfContainer,
IJclWideStrIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -325,7 +325,7 @@
end;
TJclIntfWideStrHashMap = class(TJclWideStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclIntfContainer, IJclWideStrContainer,
IJclIntfWideStrMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -377,7 +377,7 @@
end;
TJclWideStrWideStrHashMap = class(TJclWideStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclWideStrContainer,
IJclWideStrWideStrMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -431,7 +431,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrIntfHashMap = class(TJclUnicodeStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclUnicodeStrContainer, IJclIntfContainer,
IJclUnicodeStrIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -486,7 +486,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclIntfUnicodeStrHashMap = class(TJclUnicodeStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclIntfContainer, IJclUnicodeStrContainer,
IJclIntfUnicodeStrMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -542,7 +542,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrUnicodeStrHashMap = class(TJclUnicodeStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclStrBaseContainer, IJclUnicodeStrContainer,
IJclUnicodeStrUnicodeStrMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -663,7 +663,7 @@
end;
TJclSingleIntfHashMap = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclSingleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclSingleContainer, IJclIntfContainer,
IJclSingleIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -714,7 +714,7 @@
end;
TJclIntfSingleHashMap = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclSingleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclIntfContainer, IJclSingleContainer,
IJclIntfSingleMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -817,7 +817,7 @@
end;
TJclDoubleIntfHashMap = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclDoubleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclDoubleContainer, IJclIntfContainer,
IJclDoubleIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -868,7 +868,7 @@
end;
TJclIntfDoubleHashMap = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclDoubleContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclIntfContainer, IJclDoubleContainer,
IJclIntfDoubleMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -971,7 +971,7 @@
end;
TJclExtendedIntfHashMap = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclExtendedContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclExtendedContainer, IJclIntfContainer,
IJclExtendedIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1022,7 +1022,7 @@
end;
TJclIntfExtendedHashMap = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclExtendedContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclIntfContainer, IJclExtendedContainer,
IJclIntfExtendedMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1194,7 +1194,7 @@
end;
TJclIntegerIntfHashMap = class(TJclIntegerAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclIntegerContainer, IJclIntfContainer,
IJclIntegerIntfMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1245,7 +1245,7 @@
end;
TJclIntfIntegerHashMap = class(TJclIntegerAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer,
+ IJclIntfCloneable, IJclCloneable, IJclGrowable, IJclPackable, IJclBaseContainer, IJclIntfContainer, IJclIntegerContainer,
IJclIntfIntegerMap)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1297,7 +1297,7 @@
end;
TJclIntegerIntegerHashMap = class(TJclIntegerAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclClo...
[truncated message content] |
|
From: <ou...@us...> - 2012-02-19 17:53:48
|
Revision: 3734
http://jcl.svn.sourceforge.net/jcl/?rev=3734&view=rev
Author: outchy
Date: 2012-02-19 17:53:42 +0000 (Sun, 19 Feb 2012)
Log Message:
-----------
missing unit as of revision 3720.
Revision Links:
--------------
http://jcl.svn.sourceforge.net/jcl/?rev=3720&view=rev
Modified Paths:
--------------
trunk/jcl/devtools/jpp/jppContainers.dpr
Modified: trunk/jcl/devtools/jpp/jppContainers.dpr
===================================================================
--- trunk/jcl/devtools/jpp/jppContainers.dpr 2012-02-19 12:38:32 UTC (rev 3733)
+++ trunk/jcl/devtools/jpp/jppContainers.dpr 2012-02-19 17:53:42 UTC (rev 3734)
@@ -63,6 +63,7 @@
JclPreProcessorContainer2DTemplates,
JclPreProcessorContainerKnownMaps,
JclPreProcessorHashMapsTemplates,
+ JclPreProcessorHashSetsTemplates,
JclPreProcessorSortedMapsTemplates,
JppMain in 'JppMain.pas';
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-19 12:38:40
|
Revision: 3733
http://jcl.svn.sourceforge.net/jcl/?rev=3733&view=rev
Author: outchy
Date: 2012-02-19 12:38:32 +0000 (Sun, 19 Feb 2012)
Log Message:
-----------
SVN property cleanup.
Modified Paths:
--------------
trunk/thirdparty/svn_cleaner/SvnCleaner.xml
trunk/website/sourceforge/daily/index.php
trunk/website/sourceforge/daily/styles/index.php
trunk/website/sourceforge/index.php
trunk/website/sourceforge/itrack/index.php
Property Changed:
----------------
trunk/jcl/source/windows/obj/pcre/
trunk/thirdparty/pcre/pcre-8.21/pcre_jit_compile.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitConfig.h
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitConfigInternal.h
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitExecAllocator.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitLir.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitLir.h
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeARM_Thumb2.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeARM_v5.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeMIPS_32.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeMIPS_common.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativePPC_32.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativePPC_64.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativePPC_common.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeX86_32.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeX86_64.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeX86_common.c
trunk/thirdparty/pcre/pcre-8.21/sljit/sljitUtils.c
trunk/website/sourceforge/JEDI.ico
trunk/website/sourceforge/daily/index.php
trunk/website/sourceforge/daily/styles/index.php
trunk/website/sourceforge/index.php
trunk/website/sourceforge/itrack/index.php
Property changes on: trunk/jcl/source/windows/obj/pcre
___________________________________________________________________
Deleted: svn:ignore
- pcre_default_tables.c
Property changes on: trunk/thirdparty/pcre/pcre-8.21/pcre_jit_compile.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitConfig.h
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitConfigInternal.h
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitExecAllocator.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitLir.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitLir.h
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeARM_Thumb2.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeARM_v5.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeMIPS_32.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeMIPS_common.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativePPC_32.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativePPC_64.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativePPC_common.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeX86_32.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeX86_64.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitNativeX86_common.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Property changes on: trunk/thirdparty/pcre/pcre-8.21/sljit/sljitUtils.c
___________________________________________________________________
Added: svn:keywords
+ URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id
Added: svn:eol-style
+ native
Modified: trunk/thirdparty/svn_cleaner/SvnCleaner.xml
===================================================================
--- trunk/thirdparty/svn_cleaner/SvnCleaner.xml 2012-02-17 20:09:24 UTC (rev 3732)
+++ trunk/thirdparty/svn_cleaner/SvnCleaner.xml 2012-02-19 12:38:32 UTC (rev 3733)
@@ -23,7 +23,7 @@
<value>URL HeadURL Author LastChangedBy Date LastChangedDate Rev Revision LastChangedRevision Id</value>
</property>
</setting>
- <setting path="" mask="*.pas *.cpp *.inc *.h *.c *.dpr *.dpk *.lpk *.bpr *.bpk *.bpf *.bmk *.def *.conf *.sh *.txt *.bat *.xml *.html *.css *.exc *.bpg *.bdsgroup *.bdsproj *.groupproj *.dproj *.cproj *.dof *.rc *.dfm *.xfm *.dtx *.dsf *.dox *.dfg *.ini *.mak *.int *.imp *.pl *.cmd *.manifest *.iss *.cs *.resx *.htaccess *.cfg *.HxC *.HxK *.HxT *.cnt" recurse="yes" dironly="no">
+ <setting path="" mask="*.pas *.cpp *.inc *.h *.c *.dpr *.dpk *.lpk *.bpr *.bpk *.bpf *.bmk *.def *.conf *.sh *.txt *.bat *.xml *.html *.css *.exc *.bpg *.bdsgroup *.bdsproj *.groupproj *.dproj *.cproj *.dof *.rc *.dfm *.xfm *.dtx *.dsf *.dox *.dfg *.ini *.mak *.int *.imp *.pl *.cmd *.manifest *.iss *.cs *.resx *.htaccess *.cfg *.HxC *.HxK *.HxT *.cnt *.php" recurse="yes" dironly="no">
<property name="svn:eol-style">
<value>native</value>
</property>
@@ -404,6 +404,8 @@
<value>jcld12.inc</value>
<value>jcld14.inc</value>
<value>jcld15.inc</value>
+ <value>jcld16win32.inc</value>
+ <value>jcld16win64.inc</value>
</property>
<property name="svn:externals">
<value>jedi https://projectjedi.svn.sourceforge.net:443/svnroot/projectjedi/trunk/shared/include</value>
@@ -418,7 +420,7 @@
</property>
</setting>
- <setting path="windows/obj/pcre" mask="" recurse="no" dironly="yes">
+ <setting path="windows/obj/pcre" mask="win??" recurse="no" dironly="yes">
<property name="svn:ignore">
<value>pcre_default_tables.c</value>
</property>
@@ -593,6 +595,8 @@
<value>install-sh</value>
<value>pcre.h</value>
<value>config.h</value>
+ <value>pcre_jit_test.c</value>
+ <value>CheckMan</value>
</property>
</setting>
Property changes on: trunk/website/sourceforge/JEDI.ico
___________________________________________________________________
Modified: svn:mime-type
- application/octet-stream
+ image/x-icon
Modified: trunk/website/sourceforge/daily/index.php
===================================================================
--- trunk/website/sourceforge/daily/index.php 2012-02-17 20:09:24 UTC (rev 3732)
+++ trunk/website/sourceforge/daily/index.php 2012-02-19 12:38:32 UTC (rev 3733)
@@ -1,164 +1,164 @@
-<?php
-
-function GetDisplayFileDate($filename)
-{
- if (file_exists($filename))
- return date("Y-m-d H:i:s T", filemtime($filename));
- else
- return "Missing file";
-}
-
-function GetDisplayFileSize($filename)
-{
- if (!file_exists($filename))
- return "Missing file";
-
- $size = filesize($filename);
-
- if ($size > 1024*1024)
- return round($size / (1024*1024), 2)." MB";
- else if ($size > 1024)
- return round($size / 1024, 2)." KB";
- else
- return $size;
-}
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <meta content="text/html; charset=ISO-8859-1"
- http-equiv="content-type">
- <title>Daily packages</title>
- <link rel="STYLESHEET" type="text/css" href="styles/default.css">
- <link rel="shortcut icon" href="/JEDI.ico" />
-</head>
-<body>
-<h1>JCL Daily packages
-</h1>
-<hr style="width: 100%; height: 2px;">
-<br>
-Welcome to the daily packages website for the JCL.<br>
-On this page, you will find archive files containing a snapshot of the
-JCL done automatically every night.<br>
-They contain a copy of the development repository and as such contain
-all the latest bug fixes and improvements provided by the JCL
-developers.<br>
-<br>
-The latest source files are available for download below:<br>
-<br>
-<table
- style="width: 75%; text-align: left; margin-left: auto; margin-right: auto;"
- cellspacing="2" cellpadding="2">
- <tbody>
- <tr>
- <td style="vertical-align: top; font-weight: bold;">File<br>
- </td>
- <td style="vertical-align: top; font-weight: bold;">Date and time<br>
- </td>
- <td style="vertical-align: top;"><span style="font-weight: bold;">Size</span><br>
- </td>
-<!-- <td style="vertical-align: top;"><span style="font-weight: bold;">Description</span><br>
- </td>-->
- </tr>
- <?php
-
- $dh = opendir("./");
- $filenames = array();
- while (($filename = readdir($dh)) !== false)
- {
- if (!is_dir($filename) &&
- (substr($filename, 0, 4) == "jcl-") &&
- (substr($filename, -11, 8) != "-winhelp") &&
- (substr($filename, -13, 10) != "-htmlhelp2") &&
- (substr($filename, -11, 8) != "-chmhelp"))
- {
- $filenames[] = $filename;
- }
- }
-
- // sort the array before displaying it
- rsort($filenames);
-
- foreach ($filenames as $filename)
- {
- $filename_full = $filename;
- echo '<tr>';
- echo ' <td style="vertical-align: top;"><a href="'.$filename_full.'">'.$filename_full.'</a><br>';
- echo ' </td>';
- echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileDate($filename_full);
- echo ' </td>';
- echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileSize($filename_full);
- echo ' </td>';
-// echo ' <td style="vertical-align: top;">The complete set of files<br>';
-// echo ' </td>';
- echo '</tr>';
- }
- ?>
- </tbody>
-</table>
-<br>
-The latest help files are available for download below:<br>
-<br>
-<table
- style="width: 75%; text-align: left; margin-left: auto; margin-right: auto;"
- cellspacing="2" cellpadding="2">
- <tbody>
- <tr>
- <td style="vertical-align: top; font-weight: bold;">File<br>
- </td>
- <td style="vertical-align: top; font-weight: bold;">Date and time<br>
- </td>
- <td style="vertical-align: top;"><span style="font-weight: bold;">Size</span><br>
- </td>
-<!-- <td style="vertical-align: top;"><span style="font-weight: bold;">Description</span><br>
- </td>-->
- </tr>
- <?php
-
- $dh = opendir("./");
- $filenames = array();
- while (($filename = readdir($dh)) !== false)
- {
- if (!is_dir($filename) &&
- (substr($filename, 0, 4) == "jcl-") &&
- ((substr($filename, -11, 8) == "-winhelp") ||
- (substr($filename, -13, 10) == "-htmlhelp2") ||
- (substr($filename, -11, 8) == "-chmhelp")))
- {
- $filenames[] = $filename;
- }
- }
-
- // sort the array before displaying it
- rsort($filenames);
-
- foreach ($filenames as $filename)
- {
- $filename_full = $filename;
- echo '<tr>';
- echo ' <td style="vertical-align: top;"><a href="'.$filename_full.'">'.$filename_full.'</a><br>';
- echo ' </td>';
- echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileDate($filename_full);
- echo ' </td>';
- echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileSize($filename_full);
- echo ' </td>';
-// echo ' <td style="vertical-align: top;">The complete set of files<br>';
-// echo ' </td>';
- echo '</tr>';
- }
- ?>
- </tbody>
-</table>
-<br>
-The dates are presented according to the ISO standard (YYYY-MM-DD) and the hours are those of the location of the web server.<br>
-<br>
-Should you have any problems with those files, please do not hesitate
-to contact us on our newsgroup here:<br>
-<br>
-<a href="news://news.delphi-jedi.org/jedi.jcl">news://news.delphi-jedi.org/jedi.jcl</a><br>
-<br>
-Thank you for considering the JCL.<br>
-<br>
-<a href="http://sourceforge.net/projects/jcl"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=47514&type=15" width="150" height="40" alt="Get JEDI Code Library at SourceForge.net. Fast, secure and Free Open Source software downloads" /></a></body>
-</html>
+<?php
+
+function GetDisplayFileDate($filename)
+{
+ if (file_exists($filename))
+ return date("Y-m-d H:i:s T", filemtime($filename));
+ else
+ return "Missing file";
+}
+
+function GetDisplayFileSize($filename)
+{
+ if (!file_exists($filename))
+ return "Missing file";
+
+ $size = filesize($filename);
+
+ if ($size > 1024*1024)
+ return round($size / (1024*1024), 2)." MB";
+ else if ($size > 1024)
+ return round($size / 1024, 2)." KB";
+ else
+ return $size;
+}
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta content="text/html; charset=ISO-8859-1"
+ http-equiv="content-type">
+ <title>Daily packages</title>
+ <link rel="STYLESHEET" type="text/css" href="styles/default.css">
+ <link rel="shortcut icon" href="/JEDI.ico" />
+</head>
+<body>
+<h1>JCL Daily packages
+</h1>
+<hr style="width: 100%; height: 2px;">
+<br>
+Welcome to the daily packages website for the JCL.<br>
+On this page, you will find archive files containing a snapshot of the
+JCL done automatically every night.<br>
+They contain a copy of the development repository and as such contain
+all the latest bug fixes and improvements provided by the JCL
+developers.<br>
+<br>
+The latest source files are available for download below:<br>
+<br>
+<table
+ style="width: 75%; text-align: left; margin-left: auto; margin-right: auto;"
+ cellspacing="2" cellpadding="2">
+ <tbody>
+ <tr>
+ <td style="vertical-align: top; font-weight: bold;">File<br>
+ </td>
+ <td style="vertical-align: top; font-weight: bold;">Date and time<br>
+ </td>
+ <td style="vertical-align: top;"><span style="font-weight: bold;">Size</span><br>
+ </td>
+<!-- <td style="vertical-align: top;"><span style="font-weight: bold;">Description</span><br>
+ </td>-->
+ </tr>
+ <?php
+
+ $dh = opendir("./");
+ $filenames = array();
+ while (($filename = readdir($dh)) !== false)
+ {
+ if (!is_dir($filename) &&
+ (substr($filename, 0, 4) == "jcl-") &&
+ (substr($filename, -11, 8) != "-winhelp") &&
+ (substr($filename, -13, 10) != "-htmlhelp2") &&
+ (substr($filename, -11, 8) != "-chmhelp"))
+ {
+ $filenames[] = $filename;
+ }
+ }
+
+ // sort the array before displaying it
+ rsort($filenames);
+
+ foreach ($filenames as $filename)
+ {
+ $filename_full = $filename;
+ echo '<tr>';
+ echo ' <td style="vertical-align: top;"><a href="'.$filename_full.'">'.$filename_full.'</a><br>';
+ echo ' </td>';
+ echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileDate($filename_full);
+ echo ' </td>';
+ echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileSize($filename_full);
+ echo ' </td>';
+// echo ' <td style="vertical-align: top;">The complete set of files<br>';
+// echo ' </td>';
+ echo '</tr>';
+ }
+ ?>
+ </tbody>
+</table>
+<br>
+The latest help files are available for download below:<br>
+<br>
+<table
+ style="width: 75%; text-align: left; margin-left: auto; margin-right: auto;"
+ cellspacing="2" cellpadding="2">
+ <tbody>
+ <tr>
+ <td style="vertical-align: top; font-weight: bold;">File<br>
+ </td>
+ <td style="vertical-align: top; font-weight: bold;">Date and time<br>
+ </td>
+ <td style="vertical-align: top;"><span style="font-weight: bold;">Size</span><br>
+ </td>
+<!-- <td style="vertical-align: top;"><span style="font-weight: bold;">Description</span><br>
+ </td>-->
+ </tr>
+ <?php
+
+ $dh = opendir("./");
+ $filenames = array();
+ while (($filename = readdir($dh)) !== false)
+ {
+ if (!is_dir($filename) &&
+ (substr($filename, 0, 4) == "jcl-") &&
+ ((substr($filename, -11, 8) == "-winhelp") ||
+ (substr($filename, -13, 10) == "-htmlhelp2") ||
+ (substr($filename, -11, 8) == "-chmhelp")))
+ {
+ $filenames[] = $filename;
+ }
+ }
+
+ // sort the array before displaying it
+ rsort($filenames);
+
+ foreach ($filenames as $filename)
+ {
+ $filename_full = $filename;
+ echo '<tr>';
+ echo ' <td style="vertical-align: top;"><a href="'.$filename_full.'">'.$filename_full.'</a><br>';
+ echo ' </td>';
+ echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileDate($filename_full);
+ echo ' </td>';
+ echo ' <td style="vertical-align: top; white-space: nowrap;">'.GetDisplayFileSize($filename_full);
+ echo ' </td>';
+// echo ' <td style="vertical-align: top;">The complete set of files<br>';
+// echo ' </td>';
+ echo '</tr>';
+ }
+ ?>
+ </tbody>
+</table>
+<br>
+The dates are presented according to the ISO standard (YYYY-MM-DD) and the hours are those of the location of the web server.<br>
+<br>
+Should you have any problems with those files, please do not hesitate
+to contact us on our newsgroup here:<br>
+<br>
+<a href="news://news.delphi-jedi.org/jedi.jcl">news://news.delphi-jedi.org/jedi.jcl</a><br>
+<br>
+Thank you for considering the JCL.<br>
+<br>
+<a href="http://sourceforge.net/projects/jcl"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=47514&type=15" width="150" height="40" alt="Get JEDI Code Library at SourceForge.net. Fast, secure and Free Open Source software downloads" /></a></body>
+</html>
Property changes on: trunk/website/sourceforge/daily/index.php
___________________________________________________________________
Added: svn:eol-style
+ native
Modified: trunk/website/sourceforge/daily/styles/index.php
===================================================================
--- trunk/website/sourceforge/daily/styles/index.php 2012-02-17 20:09:24 UTC (rev 3732)
+++ trunk/website/sourceforge/daily/styles/index.php 2012-02-19 12:38:32 UTC (rev 3733)
@@ -1,5 +1,5 @@
-<?php
-
-Header("Location: http://jcl.sf.net/daily/");
-
-?>
+<?php
+
+Header("Location: http://jcl.sf.net/daily/");
+
+?>
Property changes on: trunk/website/sourceforge/daily/styles/index.php
___________________________________________________________________
Added: svn:eol-style
+ native
Modified: trunk/website/sourceforge/index.php
===================================================================
--- trunk/website/sourceforge/index.php 2012-02-17 20:09:24 UTC (rev 3732)
+++ trunk/website/sourceforge/index.php 2012-02-19 12:38:32 UTC (rev 3733)
@@ -1 +1 @@
-<?php header("Location: http://wiki.delphi-jedi.org/index.php?title=JEDI_Code_Library"); exit; ?>
+<?php header("Location: http://wiki.delphi-jedi.org/index.php?title=JEDI_Code_Library"); exit; ?>
Property changes on: trunk/website/sourceforge/index.php
___________________________________________________________________
Added: svn:eol-style
+ native
Modified: trunk/website/sourceforge/itrack/index.php
===================================================================
--- trunk/website/sourceforge/itrack/index.php 2012-02-17 20:09:24 UTC (rev 3732)
+++ trunk/website/sourceforge/itrack/index.php 2012-02-19 12:38:32 UTC (rev 3733)
@@ -1 +1 @@
-<?php header("Location: http://issuetracker.delphi-jedi.org/"); exit; ?>
+<?php header("Location: http://issuetracker.delphi-jedi.org/"); exit; ?>
Property changes on: trunk/website/sourceforge/itrack/index.php
___________________________________________________________________
Added: svn:eol-style
+ native
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-17 20:09:31
|
Revision: 3732
http://jcl.svn.sourceforge.net/jcl/?rev=3732&view=rev
Author: outchy
Date: 2012-02-17 20:09:24 +0000 (Fri, 17 Feb 2012)
Log Message:
-----------
Mantis 5742: String to unsigned int conversions.
Modified Paths:
--------------
trunk/jcl/source/common/JclSysUtils.pas
Modified: trunk/jcl/source/common/JclSysUtils.pas
===================================================================
--- trunk/jcl/source/common/JclSysUtils.pas 2012-02-16 19:52:42 UTC (rev 3731)
+++ trunk/jcl/source/common/JclSysUtils.pas 2012-02-17 20:09:24 UTC (rev 3732)
@@ -596,6 +596,10 @@
function IntToBool(I: Integer): Boolean;
function BoolToInt(B: Boolean): Integer;
+function TryStrToCardinal(const Value: string; out Res: Cardinal): boolean;
+function StrToCardinalDef(const Value: string; const Default: Cardinal): Cardinal;
+function StrToCardinal(const Value: string): Cardinal;
+
const
{$IFDEF MSWINDOWS}
ListSeparator = ';';
@@ -3374,6 +3378,29 @@
Result := Ord(B);
end;
+function TryStrToCardinal(const Value: string; out Res: Cardinal): boolean;
+var i6: Int64;
+begin
+ Result := false;
+ if not TryStrToInt64(Value, i6) then exit;
+ if ( i6 < Low(Res)) or ( i6 > High(Res)) then exit;
+
+ Result := true;
+ Res := i6;
+end;
+
+function StrToCardinalDef(const Value: string; const Default: Cardinal): Cardinal;
+begin
+ if not TryStrToCardinal(Value, Result)
+ then Result := Default;
+end;
+
+function StrToCardinal(const Value: string): Cardinal;
+begin
+ if not TryStrToCardinal(Value, Result)
+ then raise EConvertError.Create('"'+Value+'" is not within range of Cardinal data type');
+end;
+
//=== RTL package information ================================================
function SystemTObjectInstance: TJclAddr;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-16 19:52:48
|
Revision: 3731
http://jcl.svn.sourceforge.net/jcl/?rev=3731&view=rev
Author: outchy
Date: 2012-02-16 19:52:42 +0000 (Thu, 16 Feb 2012)
Log Message:
-----------
revision 3730 rework.
Revision Links:
--------------
http://jcl.svn.sourceforge.net/jcl/?rev=3730&view=rev
Modified Paths:
--------------
trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas
Modified: trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas
===================================================================
--- trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas 2012-02-16 19:12:33 UTC (rev 3730)
+++ trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas 2012-02-16 19:52:42 UTC (rev 3731)
@@ -429,9 +429,9 @@
{$ENDIF ~BDS6_UP}
begin
EnabledActions := GetProjectActions(Project);
- if deInsertJdbg in EnabledActions then
+ if EnabledActions <> [] then
begin
- if IsInstalledPackage(Project) then
+ if (deInsertJdbg in EnabledActions) and IsInstalledPackage(Project) then
begin
if MessageDlg(Format(LoadResString(@RsCantInsertToInstalledPackage), [Project.FileName]), mtError, [mbYes, mbNo], 0) = mrYes then
begin
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-16 19:12:42
|
Revision: 3730
http://jcl.svn.sourceforge.net/jcl/?rev=3730&view=rev
Author: outchy
Date: 2012-02-16 19:12:33 +0000 (Thu, 16 Feb 2012)
Log Message:
-----------
Mantis 5800: JCL Debug Expert pretends to be disabled for installed packages also when the binary file will not be touched!!
Modified Paths:
--------------
trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas
Modified: trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas
===================================================================
--- trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas 2012-02-16 19:07:17 UTC (rev 3729)
+++ trunk/jcl/experts/debug/converter/JclDebugIdeImpl.pas 2012-02-16 19:12:33 UTC (rev 3730)
@@ -429,7 +429,7 @@
{$ENDIF ~BDS6_UP}
begin
EnabledActions := GetProjectActions(Project);
- if EnabledActions <> [] then
+ if deInsertJdbg in EnabledActions then
begin
if IsInstalledPackage(Project) then
begin
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-16 19:07:26
|
Revision: 3729
http://jcl.svn.sourceforge.net/jcl/?rev=3729&view=rev
Author: outchy
Date: 2012-02-16 19:07:17 +0000 (Thu, 16 Feb 2012)
Log Message:
-----------
Mantis 5784: Without option sxoAutoIndent, TJclSimpleXML should not insert sLineBreak after each element.
Modified Paths:
--------------
trunk/jcl/source/common/JclSimpleXml.pas
Modified: trunk/jcl/source/common/JclSimpleXml.pas
===================================================================
--- trunk/jcl/source/common/JclSimpleXml.pas 2012-02-16 18:09:07 UTC (rev 3728)
+++ trunk/jcl/source/common/JclSimpleXml.pas 2012-02-16 19:07:17 UTC (rev 3729)
@@ -3042,6 +3042,7 @@
var
St, AName, tmp: string;
LevelAdd: string;
+ AutoIndent: Boolean;
begin
if(NameSpace <> '') then
AName := NameSpace + ':' + Name
@@ -3059,18 +3060,28 @@
FProps.SaveToStringStream(StringStream);
end;
+ AutoIndent := (SimpleXML <> nil) and (sxoAutoIndent in SimpleXML.Options);
+
if (ItemCount = 0) then
begin
tmp := Value;
if (Name <> '') then
begin
if Value = '' then
- St := '/>' + sLineBreak
+ begin
+ if AutoIndent then
+ St := '/>' + sLineBreak
+ else
+ St := '/>';
+ end
else
begin
if SimpleXML <> nil then
SimpleXML.DoEncodeValue(tmp);
- St := '>' + tmp + '</' + AName + '>' + sLineBreak;
+ if AutoIndent then
+ St := '>' + tmp + '</' + AName + '>' + sLineBreak
+ else
+ St := '>' + tmp + '</' + AName + '>';
end;
StringStream.WriteString(St, 1, Length(St));
end;
@@ -3079,18 +3090,23 @@
begin
if (Name <> '') then
begin
- St := '>' + sLineBreak;
+ if AutoIndent then
+ St := '>' + sLineBreak
+ else
+ St := '>';
StringStream.WriteString(St, 1, Length(St));
end;
- if Assigned(SimpleXML) and
- (sxoAutoIndent in SimpleXML.Options) then
+ if AutoIndent then
begin
LevelAdd := SimpleXML.IndentString;
end;
FItems.SaveToStringStream(StringStream, Level + LevelAdd);
if Name <> '' then
begin
- St := Level + '</' + AName + '>' + sLineBreak;
+ if AutoIndent then
+ St := Level + '</' + AName + '>' + sLineBreak
+ else
+ St := Level + '</' + AName + '>';
StringStream.WriteString(St, 1, Length(St));
end;
end;
@@ -3170,7 +3186,10 @@
StringStream.WriteString(St, 1, Length(St));
if Value <> '' then
StringStream.WriteString(Value, 1, Length(Value));
- St := '-->' + sLineBreak;
+ if (SimpleXML <> nil) and (sxoAutoIndent in SimpleXML.Options) then
+ St := '-->' + sLineBreak
+ else
+ St := '-->';
StringStream.WriteString(St, 1, Length(St));
if SimpleXML <> nil then
SimpleXML.DoSaveProgress;
@@ -3257,7 +3276,10 @@
StringStream.WriteString(St, 1, Length(St));
if Value <> '' then
StringStream.WriteString(Value, 1, Length(Value));
- St := ']]>' + sLineBreak;
+ if (SimpleXML <> nil) and (sxoAutoIndent in SimpleXML.Options) then
+ St := ']]>' + sLineBreak
+ else
+ St := ']]>';
StringStream.WriteString(St, 1, Length(St));
if SimpleXML <> nil then
SimpleXML.DoSaveProgress;
@@ -3323,7 +3345,10 @@
tmp := Value;
if SimpleXML <> nil then
SimpleXML.DoEncodeValue(tmp);
- St := Level + tmp + sLineBreak;
+ if (SimpleXML <> nil) and (sxoAutoIndent in SimpleXML.Options) then
+ St := Level + tmp + sLineBreak
+ else
+ St := Level + tmp;
StringStream.WriteString(St, 1, Length(St));
end;
if SimpleXML <> nil then
@@ -3436,7 +3461,10 @@
StringStream.WriteString(St, 1, Length(St));
if Assigned(FProps) then
FProps.SaveToStringStream(StringStream);
- St := '?>' + sLineBreak;
+ if (SimpleXML <> nil) and (sxoAutoIndent in SimpleXML.Options) then
+ St := '?>' + sLineBreak
+ else
+ St := '?>';
StringStream.WriteString(St, 1, Length(St));
if SimpleXML <> nil then
SimpleXML.DoSaveProgress;
@@ -3631,7 +3659,10 @@
var
St: string;
begin
- St := Level + '<!DOCTYPE ' + Value + '>' + sLineBreak;
+ if (SimpleXML <> nil) and (sxoAutoIndent in SimpleXML.Options) then
+ St := Level + '<!DOCTYPE ' + Value + '>' + sLineBreak
+ else
+ St := Level + '<!DOCTYPE ' + Value + '>';
StringStream.WriteString(St, 1, Length(St));
if SimpleXML <> nil then
SimpleXML.DoSaveProgress;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-16 18:09:13
|
Revision: 3728
http://jcl.svn.sourceforge.net/jcl/?rev=3728&view=rev
Author: outchy
Date: 2012-02-16 18:09:07 +0000 (Thu, 16 Feb 2012)
Log Message:
-----------
Mantis 5218 (comment 19420): there is a regression in revision 3727.
Add calls to inherited LoadFromStringStream and SaveToStringStream.
Revision Links:
--------------
http://jcl.svn.sourceforge.net/jcl/?rev=3727&view=rev
Modified Paths:
--------------
trunk/jcl/source/common/JclSimpleXml.pas
Modified: trunk/jcl/source/common/JclSimpleXml.pas
===================================================================
--- trunk/jcl/source/common/JclSimpleXml.pas 2012-02-15 20:38:19 UTC (rev 3727)
+++ trunk/jcl/source/common/JclSimpleXml.pas 2012-02-16 18:09:07 UTC (rev 3728)
@@ -3487,6 +3487,8 @@
CodePage: Word;
EncodingProp: TJclSimpleXMLProp;
begin
+ inherited LoadFromStringStream(StringStream);
+
if Assigned(FProps) then
EncodingProp := FProps.ItemNamed['encoding']
else
@@ -3513,6 +3515,8 @@
SetVersion(GetVersion);
SetEncoding(GetEncoding);
SetStandalone(GetStandalone);
+
+ inherited SaveToStringStream(StringStream, Level);
end;
procedure TJclSimpleXMLElemHeader.SetEncoding(const Value: string);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-15 20:38:31
|
Revision: 3727
http://jcl.svn.sourceforge.net/jcl/?rev=3727&view=rev
Author: outchy
Date: 2012-02-15 20:38:19 +0000 (Wed, 15 Feb 2012)
Log Message:
-----------
style cleanup.
Modified Paths:
--------------
trunk/jcl/source/common/JclSimpleXml.pas
Modified: trunk/jcl/source/common/JclSimpleXml.pas
===================================================================
--- trunk/jcl/source/common/JclSimpleXml.pas 2012-02-13 20:42:51 UTC (rev 3726)
+++ trunk/jcl/source/common/JclSimpleXml.pas 2012-02-15 20:38:19 UTC (rev 3727)
@@ -79,7 +79,9 @@
function GetIntValue: Int64;
procedure SetIntValue(const Value: Int64);
public
- constructor Create(const AName: string);
+ constructor Create; overload;
+ constructor Create(const AName: string); overload;
+ constructor Create(const AName, AValue: string); overload;
property Name: string read FName write SetName;
property Value: string read FValue write FValue;
property AnsiValue: AnsiString read GetAnsiValue write SetAnsiValue;
@@ -143,13 +145,15 @@
TJclSimpleXMLProp = class(TJclSimpleXMLData)
private
- FParent: TJclSimpleXMLProps;
+ FParent: TJclSimpleXMLElem;
protected
+ function GetSimpleXML: TJclSimpleXML;
procedure SetName(const Value: string); override;
public
- function GetSimpleXML: TJclSimpleXML;
+ constructor Create(AParent: TJclSimpleXMLElem; const AName, AValue: string);
procedure SaveToStringStream(StringStream: TJclStringStream);
- property Parent: TJclSimpleXMLProps read FParent write FParent;
+ property Parent: TJclSimpleXMLElem read FParent;
+ property SimpleXML: TJclSimpleXML read GetSimpleXML;
end;
{$IFDEF SUPPORTS_FOR_IN}
@@ -179,7 +183,7 @@
procedure Error(const S: string);
procedure FmtError(const S: string; const Args: array of const);
public
- constructor Create(Parent: TJclSimpleXMLElem);
+ constructor Create(AParent: TJclSimpleXMLElem);
destructor Destroy; override;
function Add(const Name, Value: string): TJclSimpleXMLProp; overload;
{$IFDEF SUPPORTS_UNICODE}
@@ -205,6 +209,7 @@
property Item[const Index: Integer]: TJclSimpleXMLProp read GetItem; default;
property ItemNamed[const Name: string]: TJclSimpleXMLProp read GetItemNamed;
property Count: Integer read GetCount;
+ property Parent: TJclSimpleXMLElem read FParent;
end;
{$IFDEF SUPPORTS_FOR_IN}
@@ -223,7 +228,6 @@
TJclSimpleXMLElemsProlog = class(TObject)
private
FElems: THashedStringList;
- FSimpleXml: TJclSimpleXml;
function GetCount: Integer;
function GetItem(const Index: Integer): TJclSimpleXMLElem;
function GetEncoding: string;
@@ -233,19 +237,20 @@
procedure SetStandAlone(const Value: Boolean);
procedure SetVersion(const Value: string);
protected
+ FSimpleXML: TJclSimpleXML;
function FindHeader: TJclSimpleXMLElem;
procedure Error(const S: string);
procedure FmtError(const S: string; const Args: array of const);
public
- constructor Create;
+ constructor Create(ASimpleXML: TJclSimpleXML);
destructor Destroy; override;
function AddComment(const AValue: string): TJclSimpleXMLElemComment;
function AddDocType(const AValue: string): TJclSimpleXMLElemDocType;
procedure Clear;
function AddStyleSheet(const AType, AHRef: string): TJclSimpleXMLElemSheet;
function AddMSOApplication(const AProgId : string): TJclSimpleXMLElemMSOApplication;
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil);
- procedure SaveToStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil);
+ procedure LoadFromStringStream(StringStream: TJclStringStream);
+ procedure SaveToStringStream(StringStream: TJclStringStream);
{$IFDEF SUPPORTS_FOR_IN}
function GetEnumerator: TJclSimpleXMLElemsPrologEnumerator;
{$ENDIF SUPPORTS_FOR_IN}
@@ -279,15 +284,15 @@
FItems: TList;
function GetItem(const Index: Integer): TJclSimpleXMLElem;
public
- constructor Create(const AOwner: TJClSimpleXMLElems; const AName: string);
+ constructor Create(AElems: TJclSimpleXMLElems; const AName: string);
destructor Destroy; override;
- function Add: TJclSimpleXmlElemClassic; overload;
- function Add(const Value: string): TJclSimpleXmlElemClassic; overload;
- function Add(const Value: Int64): TJclSimpleXmlElemClassic; overload;
- function Add(const Value: Boolean): TJclSimpleXmlElemClassic; overload;
- function Add(Value: TStream): TJclSimpleXmlElemClassic; overload;
- function AddFirst: TJclSimpleXmlElemClassic;
+ function Add: TJclSimpleXMLElemClassic; overload;
+ function Add(const Value: string): TJclSimpleXMLElemClassic; overload;
+ function Add(const Value: Int64): TJclSimpleXMLElemClassic; overload;
+ function Add(const Value: Boolean): TJclSimpleXMLElemClassic; overload;
+ function Add(Value: TStream): TJclSimpleXMLElemClassic; overload;
+ function AddFirst: TJclSimpleXMLElemClassic;
function AddComment(const Value: string): TJclSimpleXMLElemComment;
function AddCData(const Value: string): TJclSimpleXMLElemCData;
function AddText(const Value: string): TJclSimpleXMLElemText;
@@ -338,7 +343,7 @@
procedure DoItemRename(Value: TJclSimpleXMLElem; const Name: string);
procedure CreateElems;
public
- constructor Create(const AOwner: TJclSimpleXMLElem);
+ constructor Create(AParent: TJclSimpleXMLElem);
destructor Destroy; override;
// Use notify to indicate to a list that the given element is removed
@@ -376,11 +381,11 @@
function FloatValue(const Name: string; const Default: Extended = 0): Extended;
function BoolValue(const Name: string; Default: Boolean = True): Boolean;
procedure BinaryValue(const Name: string; Stream: TStream);
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil);
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil);
+ procedure LoadFromStringStream(StringStream: TJclStringStream);
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = '');
procedure Sort;
procedure CustomSort(AFunction: TJclSimpleXMLElemCompare);
- property Parent: TJclSimpleXMLElem read FParent write FParent;
+ property Parent: TJclSimpleXMLElem read FParent;
property Item[const Index: Integer]: TJclSimpleXMLElem read GetItem; default;
property ItemNamed[const Name: string]: TJclSimpleXMLElem read GetItemNamed;
property Count: Integer read GetCount;
@@ -388,19 +393,17 @@
end;
{$TYPEINFO ON}
- TJclSimpleXMLElem = class(TJclSimpleXmlData)
+ TJclSimpleXMLElem = class(TJclSimpleXMLData)
private
FParent: TJclSimpleXMLElem;
- FItems: TJclSimpleXMLElems;
- FProps: TJclSimpleXMLProps;
FSimpleXML: TJclSimpleXML;
- FContainer: TJclSimpleXMLElems;
function GetHasItems: Boolean;
function GetHasProperties: Boolean;
function GetItemCount: Integer;
function GetPropertyCount: Integer;
protected
- function GetSimpleXML: TJclSimpleXML;
+ FItems: TJclSimpleXMLElems;
+ FProps: TJclSimpleXMLProps;
function GetChildsCount: Integer;
function GetProps: TJclSimpleXMLProps;
procedure SetName(const Value: string); override;
@@ -408,12 +411,15 @@
procedure Error(const S: string);
procedure FmtError(const S: string; const Args: array of const);
public
- constructor Create(const AOwner: TJclSimpleXMLElem; const AName: string = '');
+ //constructor Create; overload;
+ //constructor Create(const AName: string); overload;
+ //constructor Create(const AName, AValue: string); overload;
+ constructor Create(ASimpleXML: TJclSimpleXML); overload;
destructor Destroy; override;
procedure Assign(Value: TJclSimpleXMLElem); virtual;
procedure Clear; virtual;
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); virtual; abstract;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); virtual;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); virtual; abstract;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); virtual;
abstract;
procedure LoadFromString(const Value: string);
function SaveToString: string;
@@ -421,10 +427,9 @@
function GetChildIndex(const AChild: TJclSimpleXMLElem): Integer;
function GetNamedIndex(const AChild: TJclSimpleXMLElem): Integer;
- property SimpleXML: TJclSimpleXML read GetSimpleXML;
- property Container: TJclSimpleXMLElems read FContainer write FContainer;
+ property SimpleXML: TJclSimpleXML read FSimpleXML;
published
- property Parent: TJclSimpleXMLElem read FParent write FParent;
+ property Parent: TJclSimpleXMLElem read FParent;
property ChildsCount: Integer read GetChildsCount;
property HasItems: Boolean read GetHasItems;
property HasProperties: Boolean read GetHasProperties;
@@ -440,32 +445,32 @@
TJclSimpleXMLElemComment = class(TJclSimpleXMLElem)
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
end;
TJclSimpleXMLElemClassic = class(TJclSimpleXMLElem)
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
end;
TJclSimpleXMLElemCData = class(TJclSimpleXMLElem)
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
end;
TJclSimpleXMLElemText = class(TJclSimpleXMLElem)
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
end;
TJclSimpleXMLElemProcessingInstruction = class(TJclSimpleXMLElem)
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
end;
TJclSimpleXMLElemHeader = class(TJclSimpleXMLElemProcessingInstruction)
@@ -477,8 +482,8 @@
procedure SetStandalone(const Value: Boolean);
procedure SetVersion(const Value: string);
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
property Version: string read GetVersion write SetVersion;
property StandAlone: Boolean read GetStandalone write SetStandalone;
property Encoding: string read GetEncoding write SetEncoding;
@@ -494,8 +499,8 @@
TJclSimpleXMLElemDocType = class(TJclSimpleXMLElem)
public
- procedure LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML = nil); override;
- procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''; AParent: TJclSimpleXML = nil); override;
+ procedure LoadFromStringStream(StringStream: TJclStringStream); override;
+ procedure SaveToStringStream(StringStream: TJclStringStream; const Level: string = ''); override;
end;
TJclSimpleXMLOptions = set of (sxoAutoCreate, sxoAutoIndent, sxoAutoEncodeValue,
@@ -528,6 +533,7 @@
procedure SetBaseIndentString(const Value: string);
procedure SetRoot(const Value: TJclSimpleXMLElemClassic);
procedure SetFileName(const Value: TFileName);
+ protected
procedure DoLoadProgress(const APosition, ATotal: Integer);
procedure DoSaveProgress;
procedure DoTagParsed(const AName: string);
@@ -545,8 +551,9 @@
procedure SaveToFile(const FileName: TFileName; Encoding: TJclStringEncoding = seAuto; CodePage: Word = CP_ACP);
procedure SaveToStream(Stream: TStream; Encoding: TJclStringEncoding = seAuto; CodePage: Word = CP_ACP);
procedure SaveToStringStream(StringStream: TJclStringStream);
- function SaveToString: string;
- function SaveToStringEncoding(Encoding: TJclStringEncoding; CodePage: Word = CP_ACP): string;
+ function SaveToString: string;
+ function SaveToStringEncoding(Encoding: TJclStringEncoding; CodePage: Word = CP_ACP): string;
+ property CodePage: Word read FCodePage;
property Prolog: TJclSimpleXMLElemsProlog read FProlog write FProlog;
property Root: TJclSimpleXMLElemClassic read FRoot write SetRoot;
property XMLData: string read SaveToString write LoadFromString;
@@ -966,12 +973,24 @@
//=== { TJclSimpleData } =====================================================
+constructor TJclSimpleData.Create;
+begin
+ inherited Create;
+end;
+
constructor TJclSimpleData.Create(const AName: string);
begin
inherited Create;
FName := AName;
end;
+constructor TJclSimpleData.Create(const AName, AValue: string);
+begin
+ inherited Create;
+ FName := AName;
+ FValue := AValue;
+end;
+
function TJclSimpleData.GetAnsiValue: AnsiString;
begin
Result := AnsiString(Value);
@@ -1034,10 +1053,8 @@
constructor TJclSimpleXML.Create;
begin
inherited Create;
- FRoot := TJclSimpleXMLElemClassic.Create(nil);
- FRoot.FSimpleXML := Self;
- FProlog := TJclSimpleXMLElemsProlog.Create;
- FProlog.FSimpleXML := Self;
+ FRoot := TJclSimpleXMLElemClassic.Create(Self);
+ FProlog := TJclSimpleXMLElemsProlog.Create(Self);
FOptions := [sxoAutoIndent, sxoAutoEncodeValue, sxoAutoEncodeEntity];
FIndentString := ' ';
end;
@@ -1206,12 +1223,12 @@
StringStream.BufferSize := 1;
// Read doctype and so on
- FProlog.LoadFromStringStream(StringStream, Self);
+ FProlog.LoadFromStringStream(StringStream);
StringStream.BufferSize := BufferSize;
// Read elements
- FRoot.LoadFromStringStream(StringStream, Self);
+ FRoot.LoadFromStringStream(StringStream);
if Assigned(FOnLoadProg) then
FOnLoadProg(Self, StringStream.Stream.Position, StringStream.Stream.Size);
@@ -1247,7 +1264,7 @@
AOutStream: TStream;
AStringStream: TJclStringStream;
DoFree: Boolean;
- XmlHeader: TJclSimpleXMLElemHeader;
+ XMLHeader: TJclSimpleXMLElemHeader;
I: Integer;
begin
if Assigned(FOnEncodeStream) then
@@ -1263,16 +1280,16 @@
try
if Encoding = seAuto then
begin
- XmlHeader := nil;
+ XMLHeader := nil;
for I := 0 to Prolog.Count - 1 do
if Prolog.Item[I] is TJclSimpleXMLElemHeader then
begin
- XmlHeader := TJclSimpleXMLElemHeader(Prolog.Item[I]);
+ XMLHeader := TJclSimpleXMLElemHeader(Prolog.Item[I]);
Break;
end;
- if Assigned(XmlHeader) then
+ if Assigned(XMLHeader) then
begin
- CodePage := CodePageFromCharsetName(XmlHeader.Encoding);
+ CodePage := CodePageFromCharsetName(XMLHeader.Encoding);
case CodePage of
CP_UTF8:
Encoding := seUTF8;
@@ -1336,9 +1353,9 @@
FOnSaveProg(Self, 0, lCount);
if not (sxoDoNotSaveProlog in FOptions) then
- Prolog.SaveToStringStream(StringStream, Self);
+ Prolog.SaveToStringStream(StringStream);
- Root.SaveToStringStream(StringStream, BaseIndentString, Self);
+ Root.SaveToStringStream(StringStream, BaseIndentString);
if Assigned(FOnSaveProg) then
FOnSaveProg(Self, lCount, lCount);
@@ -1426,7 +1443,7 @@
// Create from the class type, so that the virtual constructor is called
// creating an element of the correct class type.
SrcElem := SrcElems.Item[I];
- DestElem := TJclSimpleXMLElemClass(SrcElem.ClassType).Create(Self, SrcElem.Name);
+ DestElem := TJclSimpleXMLElemClass(SrcElem.ClassType).Create(SrcElem.Name, SrcElem.Value);
DestElem.Assign(SrcElem);
DestElems.Add(DestElem);
end;
@@ -1441,17 +1458,15 @@
FProps.Clear;
end;
-constructor TJclSimpleXMLElem.Create(const AOwner: TJclSimpleXMLElem; const AName: string);
+constructor TJclSimpleXMLElem.Create(ASimpleXML: TJclSimpleXML);
begin
- inherited Create(AName);
- FParent := TJclSimpleXMLElem(AOwner);
- if Assigned(FParent) then
- FSimpleXML := FParent.FSimpleXML;
- FContainer := nil;
+ inherited Create;
+ FSimpleXML := ASimpleXML;
end;
destructor TJclSimpleXMLElem.Destroy;
begin
+ FSimpleXML := nil;
FParent := nil;
Clear;
FreeAndNil(FItems);
@@ -1608,14 +1623,6 @@
Result := FProps;
end;
-function TJclSimpleXMLElem.GetSimpleXML: TJclSimpleXML;
-begin
- if FParent <> nil then
- Result := FParent.GetSimpleXML
- else
- Result := FSimpleXML;
-end;
-
procedure TJclSimpleXMLElem.LoadFromString(const Value: string);
var
Stream: TJclStringStream;
@@ -1689,10 +1696,10 @@
//=== { TJclSimpleXMLNamedElems } ============================================
-constructor TJclSimpleXMLNamedElems.Create(const AOwner: TJClSimpleXMLElems; const AName: string);
+constructor TJclSimpleXMLNamedElems.Create(AElems: TJclSimpleXMLElems; const AName: string);
begin
inherited Create;
- FElems := AOwner;
+ FElems := AElems;
FName := AName;
FItems := TList.Create;
end;
@@ -1703,27 +1710,27 @@
inherited Destroy;
end;
-function TJclSimpleXMLNamedElems.Add(const Value: Int64): TJclSimpleXmlElemClassic;
+function TJclSimpleXMLNamedElems.Add(const Value: Int64): TJclSimpleXMLElemClassic;
begin
Result := Elems.Add(Name, Value);
end;
-function TJclSimpleXMLNamedElems.Add(Value: TStream): TJclSimpleXmlElemClassic;
+function TJclSimpleXMLNamedElems.Add(Value: TStream): TJclSimpleXMLElemClassic;
begin
Result := Elems.Add(Name, Value);
end;
-function TJclSimpleXMLNamedElems.Add(const Value: Boolean): TJclSimpleXmlElemClassic;
+function TJclSimpleXMLNamedElems.Add(const Value: Boolean): TJclSimpleXMLElemClassic;
begin
Result := Elems.Add(Name, Value);
end;
-function TJclSimpleXMLNamedElems.Add: TJclSimpleXmlElemClassic;
+function TJclSimpleXMLNamedElems.Add: TJclSimpleXMLElemClassic;
begin
Result := Elems.Add(Name);
end;
-function TJclSimpleXMLNamedElems.Add(const Value: string): TJclSimpleXmlElemClassic;
+function TJclSimpleXMLNamedElems.Add(const Value: string): TJclSimpleXMLElemClassic;
begin
Result := Elems.Add(Name, Value);
end;
@@ -1738,7 +1745,7 @@
Result := Elems.AddComment(Name, Value);
end;
-function TJclSimpleXMLNamedElems.AddFirst: TJclSimpleXmlElemClassic;
+function TJclSimpleXMLNamedElems.AddFirst: TJclSimpleXMLElemClassic;
begin
Result := Elems.AddFirst(Name);
end;
@@ -1854,21 +1861,19 @@
function TJclSimpleXMLElems.Add(const Name: string): TJclSimpleXMLElemClassic;
begin
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
+ Result := TJclSimpleXMLElemClassic.Create(Name);
AddChild(Result);
end;
function TJclSimpleXMLElems.Add(const Name, Value: string): TJclSimpleXMLElemClassic;
begin
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
- Result.Value := Value;
+ Result := TJclSimpleXMLElemClassic.Create(Name, Value);
AddChild(Result);
end;
function TJclSimpleXMLElems.Add(const Name: string; const Value: Int64): TJclSimpleXMLElemClassic;
begin
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
- Result.Value := IntToStr(Value);
+ Result := TJclSimpleXMLElemClassic.Create(Name, IntToStr(Value));
AddChild(Result);
end;
@@ -1879,11 +1884,9 @@
Result := Value;
end;
-function TJclSimpleXMLElems.Add(const Name: string;
- const Value: Boolean): TJclSimpleXMLElemClassic;
+function TJclSimpleXMLElems.Add(const Name: string; const Value: Boolean): TJclSimpleXMLElemClassic;
begin
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
- Result.Value := BoolToStr(Value);
+ Result := TJclSimpleXMLElemClassic.Create(Name, BoolToStr(Value));
AddChild(Result);
end;
@@ -1904,8 +1907,7 @@
St := St + IntToHex(Buf[I], 2);
Stream.WriteString(St);
until Count = 0;
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
- Result.Value := Stream.DataString;
+ Result := TJclSimpleXMLElemClassic.Create(Name, Stream.DataString);
AddChild(Result);
finally
Stream.Free;
@@ -1919,11 +1921,8 @@
CreateElems;
// If there already is a container, notify it to remove the element
- if Assigned(Value.Container) then
- begin
- Value.Container.Notify(Value, opRemove);
- Value.Parent := Parent;
- end;
+ if Assigned(Value.Parent) then
+ Value.Parent.Items.Notify(Value, opRemove);
FElems.AddObject(Value.Name, Value);
@@ -1944,11 +1943,8 @@
CreateElems;
// If there already is a container, notify it to remove the element
- if Assigned(Value.Container) then
- begin
- Value.Container.Notify(Value, opRemove);
- Value.Parent := Parent;
- end;
+ if Assigned(Value.Parent) then
+ Value.Parent.Items.Notify(Value, opRemove);
FElems.InsertObject(0, Value.Name, Value);
@@ -1964,7 +1960,7 @@
function TJclSimpleXMLElems.AddFirst(const Name: string): TJclSimpleXMLElemClassic;
begin
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
+ Result := TJclSimpleXMLElemClassic.Create(Name);
AddChildFirst(Result);
end;
@@ -1978,22 +1974,19 @@
function TJclSimpleXMLElems.AddComment(const Name,
Value: string): TJclSimpleXMLElemComment;
begin
- Result := TJclSimpleXMLElemComment.Create(Parent, Name);
- Result.Value := Value;
+ Result := TJclSimpleXMLElemComment.Create(Name, Value);
AddChild(Result);
end;
function TJclSimpleXMLElems.AddCData(const Name, Value: string): TJclSimpleXMLElemCData;
begin
- Result := TJclSimpleXMLElemCData.Create(Parent, Name);
- Result.Value := Value;
+ Result := TJclSimpleXMLElemCData.Create(Name, Value);
AddChild(Result);
end;
function TJclSimpleXMLElems.AddText(const Name, Value: string): TJclSimpleXMLElemText;
begin
- Result := TJclSimpleXMLElemText.Create(Parent, Name);
- Result.Value := Value;
+ Result := TJclSimpleXMLElemText.Create(Name, Value);
AddChild(Result);
end;
@@ -2046,10 +2039,10 @@
end;
end;
-constructor TJclSimpleXMLElems.Create(const AOwner: TJclSimpleXMLElem);
+constructor TJclSimpleXMLElems.Create(AParent: TJclSimpleXMLElem);
begin
inherited Create;
- FParent := AOwner;
+ FParent := AParent;
end;
procedure TJclSimpleXMLElems.CreateElems;
@@ -2207,7 +2200,7 @@
Result := Elem.IntValue;
end;
-procedure TJclSimpleXMLElems.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElems.LoadFromStringStream(StringStream: TJclStringStream);
type
TReadStatus = (rsWaitingTag, rsReadingTagKind);
var
@@ -2216,18 +2209,20 @@
lElem: TJclSimpleXMLElem;
Ch: UCS4;
ContainsText, ContainsWhiteSpace, KeepWhiteSpace: Boolean;
+ SimpleXML: TJclSimpleXML;
begin
SetLength(St, 0);
lPos := rsWaitingTag;
- KeepWhiteSpace := (AParent <> nil) and (sxoKeepWhitespace in AParent.Options);
+ SimpleXML := Parent.SimpleXML;
+ KeepWhiteSpace := (SimpleXML <> nil) and (sxoKeepWhitespace in SimpleXML.Options);
ContainsText := False;
ContainsWhiteSpace := False;
// We read from a stream, thus replacing the existing items
Clear;
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.PeekUCS4(Ch) do
begin
@@ -2262,24 +2257,24 @@
// tags.
if ContainsText or (ContainsWhiteSpace and KeepWhiteSpace) then
begin
- lElem := TJclSimpleXMLElemText.Create(Parent);
- lElem.LoadFromStringStream(StringStream, AParent);
+ lElem := TJclSimpleXMLElemText.Create;
CreateElems;
- FElems.AddObject(lElem.Name, lElem);
Notify(lElem,opInsert);
+ lElem.LoadFromStringStream(StringStream);
+ FElems.AddObject(lElem.Name, lElem);
end;
Break;
end
else
begin
- lElem := TJclSimpleXMLElemClassic.Create(Parent);
+ lElem := TJclSimpleXMLElemClassic.Create;
UCS4ArrayConcat(St, Ch); // "<name/"
lPos := rsWaitingTag;
end;
Ord(NativeSpace), Ord('>'), Ord(':'): //This should be a classic tag
begin // "<XXX " or "<XXX:" or "<XXX>
- lElem := TJclSimpleXMLElemClassic.Create(Parent);
+ lElem := TJclSimpleXMLElemClassic.Create;
SetLength(St, 0);
lPos := rsWaitingTag;
end;
@@ -2287,7 +2282,7 @@
if ContainsText or (ContainsWhiteSpace and KeepWhiteSpace) then
begin
// inner text
- lElem := TJclSimpleXMLElemText.Create(Parent);
+ lElem := TJclSimpleXMLElemText.Create;
lPos := rsReadingTagKind;
ContainsText := False;
ContainsWhiteSpace := False;
@@ -2298,21 +2293,21 @@
UCS4ArrayConcat(St, Ch);
if UCS4ArrayEquals(St, '<![CDATA[') then
begin
- lElem := TJclSimpleXMLElemCData.Create(Parent);
+ lElem := TJclSimpleXMLElemCData.Create;
lPos := rsWaitingTag;
SetLength(St, 0);
end
else
if UCS4ArrayEquals(St, '<!--') then
begin
- lElem := TJclSimpleXMLElemComment.Create(Parent);
+ lElem := TJclSimpleXMLElemComment.Create;
lPos := rsWaitingTag;
SetLength(St, 0);
end
else
if UCS4ArrayEquals(St, '<?') then
begin
- lElem := TJclSimpleXMLElemProcessingInstruction.Create(Parent);
+ lElem := TJclSimpleXMLElemProcessingInstruction.Create;
lPos := rsWaitingTag;
SetLength(St, 0);
end;
@@ -2322,9 +2317,9 @@
if lElem <> nil then
begin
CreateElems;
- lElem.LoadFromStringStream(StringStream, AParent);
- FElems.AddObject(lElem.Name, lElem);
Notify(lElem, opInsert);
+ lElem.LoadFromStringStream(StringStream);
+ FElems.AddObject(lElem.Name, lElem);
end;
end;
end;
@@ -2338,7 +2333,7 @@
begin
case Operation of
opRemove:
- if Value.Container = Self then // Only remove if we have it
+ if Value.Parent = Parent then // Only remove if we have it
begin
if FNamedElems <> nil then
begin
@@ -2347,9 +2342,14 @@
TJclSimpleXMLNamedElems(FNamedElems.Objects[NamedIndex]).FItems.Remove(Value);
end;
FElems.Delete(FElems.IndexOfObject(Value));
+ Value.FParent := nil;
+ Value.FSimpleXML := nil;
end;
opInsert:
- Value.Container := Self;
+ begin
+ Value.FParent := Parent;
+ Value.FSimpleXML := Parent.SimpleXML;
+ end;
end;
end;
@@ -2360,12 +2360,12 @@
end;
procedure TJclSimpleXMLElems.SaveToStringStream(StringStream: TJclStringStream;
- const Level: string; AParent: TJclSimpleXML);
+ const Level: string);
var
I: Integer;
begin
for I := 0 to Count - 1 do
- Item[I].SaveToStringStream(StringStream, Level, AParent);
+ Item[I].SaveToStringStream(StringStream, Level);
end;
function TJclSimpleXMLElems.Value(const Name, Default: string): string;
@@ -2409,11 +2409,8 @@
CreateElems;
// If there already is a container, notify it to remove the element
- if Assigned(Value.Container) then
- begin
- Value.Container.Notify(Value, opRemove);
- Value.Parent := Parent;
- end;
+ if Assigned(Value.Parent) then
+ Value.Parent.Items.Notify(Value, opRemove);
FElems.InsertObject(Index, Value.Name, Value);
@@ -2438,7 +2435,7 @@
function TJclSimpleXMLElems.Insert(const Name: string;
Index: Integer): TJclSimpleXMLElemClassic;
begin
- Result := TJclSimpleXMLElemClassic.Create(Parent, Name);
+ Result := TJclSimpleXMLElemClassic.Create(Name);
InsertChild(Result, Index);
end;
@@ -2498,16 +2495,11 @@
//=== { TJclSimpleXMLProps } =================================================
function TJclSimpleXMLProps.Add(const Name, Value: string): TJclSimpleXMLProp;
-var
- Elem: TJclSimpleXMLProp;
begin
if FProperties = nil then
FProperties := TStringList.Create;
- Elem := TJclSimpleXMLProp.Create(Name);
- FProperties.AddObject(Name, Elem);
- Elem.Value := Value;
- Elem.Parent := Self;
- Result := Elem;
+ Result := TJclSimpleXMLProp.Create(Parent, Name, Value);
+ FProperties.AddObject(Name, Result);
end;
function TJclSimpleXMLProps.Add(const Name: string; const Value: Int64): TJclSimpleXMLProp;
@@ -2529,16 +2521,11 @@
{$ENDIF SUPPORTS_UNICODE}
function TJclSimpleXMLProps.Insert(const Index: Integer; const Name, Value: string): TJclSimpleXMLProp;
-var
- Elem: TJclSimpleXMLProp;
begin
if FProperties = nil then
FProperties := TStringList.Create;
- Elem := TJclSimpleXMLProp.Create(Name);
- FProperties.InsertObject(Index, Name, Elem);
- Elem.Value := Value;
- Elem.Parent := Self;
- Result := Elem;
+ Result := TJclSimpleXMLProp.Create(Parent, Name, Value);
+ FProperties.InsertObject(Index, Name, Result);
end;
function TJclSimpleXMLProps.Insert(const Index: Integer; const Name: string; const Value: Int64): TJclSimpleXMLProp;
@@ -2590,10 +2577,10 @@
end;
end;
-constructor TJclSimpleXMLProps.Create(Parent: TJclSimpleXMLElem);
+constructor TJclSimpleXMLProps.Create(AParent: TJclSimpleXMLElem);
begin
inherited Create;
- FParent := Parent;
+ FParent := AParent;
end;
procedure TJclSimpleXMLProps.Delete(const Name: string);
@@ -2696,7 +2683,7 @@
function TJclSimpleXMLProps.GetSimpleXML: TJclSimpleXML;
begin
if FParent <> nil then
- Result := FParent.GetSimpleXML
+ Result := FParent.SimpleXML
else
Result := nil;
end;
@@ -2856,10 +2843,16 @@
//=== { TJclSimpleXMLProp } ==================================================
+constructor TJclSimpleXMLProp.Create(AParent: TJclSimpleXMLElem; const AName, AValue: string);
+begin
+ inherited Create(AName, AValue);
+ FParent := AParent;
+end;
+
function TJclSimpleXMLProp.GetSimpleXML: TJclSimpleXML;
begin
- if (FParent <> nil) and (FParent.FParent <> nil) then
- Result := FParent.FParent.GetSimpleXML
+ if FParent <> nil then
+ Result := FParent.SimpleXML
else
Result := nil;
end;
@@ -2885,14 +2878,14 @@
if (Value <> Name) and (Value <> '') then
begin
if (Parent <> nil) and (Name <> '') then
- Parent.DoItemRename(Self, Value);
+ FParent.Properties.DoItemRename(Self, Value);
inherited SetName(Value);
end;
end;
//=== { TJclSimpleXMLElemClassic } ===========================================
-procedure TJclSimpleXMLElemClassic.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemClassic.LoadFromStringStream(StringStream: TJclStringStream);
//<element Prop="foo" Prop='bar'/>
//<element Prop="foo" Prop='bar'>foor<b>beuh</b>bar</element>
//<xml:element Prop="foo" Prop='bar'>foor<b>beuh</b>bar</element>
@@ -2911,8 +2904,8 @@
sValue := '';
lPos := rsWaitingOpeningTag;
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.ReadUCS4(Ch) do
begin
@@ -2957,7 +2950,7 @@
lName := St;
SetLength(St, 0);
//Load elements
- Items.LoadFromStringStream(StringStream, AParent);
+ Items.LoadFromStringStream(StringStream);
lPos := rsWaitingClosingTag1;
end
else
@@ -2974,7 +2967,7 @@
if Ch = Ord('>') then // 2 tags
begin
//Load elements
- Items.LoadFromStringStream(StringStream, AParent);
+ Items.LoadFromStringStream(StringStream);
lPos := rsWaitingClosingTag1;
end
else
@@ -3033,36 +3026,32 @@
end;
Name := UCS4ToString(lName);
- if GetSimpleXML <> nil then
- GetSimpleXML.DoDecodeValue(sValue);
+ if SimpleXML <> nil then
+ SimpleXML.DoDecodeValue(sValue);
Value := sValue;
NameSpace := UCS4ToString(lNameSpace);
- if AParent <> nil then
+ if SimpleXML <> nil then
begin
- AParent.DoTagParsed(Name);
- AParent.DoValueParsed(Name, sValue);
+ SimpleXML.DoTagParsed(Name);
+ SimpleXML.DoValueParsed(Name, sValue);
end;
end;
-procedure TJclSimpleXMLElemClassic.SaveToStringStream(StringStream: TJclStringStream; const Level: string; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemClassic.SaveToStringStream(StringStream: TJclStringStream; const Level: string);
var
St, AName, tmp: string;
LevelAdd: string;
begin
if(NameSpace <> '') then
- begin
- AName := NameSpace + ':' + Name;
- end
+ AName := NameSpace + ':' + Name
else
- begin
AName := Name;
- end;
if Name <> '' then
begin
- if GetSimpleXML <> nil then
- GetSimpleXML.DoEncodeValue(AName);
+ if SimpleXML <> nil then
+ SimpleXML.DoEncodeValue(AName);
St := Level + '<' + AName;
StringStream.WriteString(St, 1, Length(St));
@@ -3079,8 +3068,8 @@
St := '/>' + sLineBreak
else
begin
- if GetSimpleXML <> nil then
- GetSimpleXML.DoEncodeValue(tmp);
+ if SimpleXML <> nil then
+ SimpleXML.DoEncodeValue(tmp);
St := '>' + tmp + '</' + AName + '>' + sLineBreak;
end;
StringStream.WriteString(St, 1, Length(St));
@@ -3098,20 +3087,20 @@
begin
LevelAdd := SimpleXML.IndentString;
end;
- FItems.SaveToStringStream(StringStream, Level + LevelAdd, AParent);
+ FItems.SaveToStringStream(StringStream, Level + LevelAdd);
if Name <> '' then
begin
St := Level + '</' + AName + '>' + sLineBreak;
StringStream.WriteString(St, 1, Length(St));
end;
end;
- if AParent <> nil then
- AParent.DoSaveProgress;
+ if SimpleXML <> nil then
+ SimpleXML.DoSaveProgress;
end;
//=== { TJclSimpleXMLElemComment } ===========================================
-procedure TJclSimpleXMLElemComment.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemComment.LoadFromStringStream(StringStream: TJclStringStream);
//<!-- declarations for <head> & <body> -->
const
CS_START_COMMENT = '<!--';
@@ -3126,8 +3115,8 @@
lPos := 1;
lOk := False;
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.ReadUCS4(Ch) do
begin
@@ -3169,11 +3158,11 @@
Value := UCS4ToString(St);
Name := '';
- if AParent <> nil then
- AParent.DoValueParsed('', Value);
+ if SimpleXML <> nil then
+ SimpleXML.DoValueParsed('', Value);
end;
-procedure TJclSimpleXMLElemComment.SaveToStringStream(StringStream: TJclStringStream; const Level: string; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemComment.SaveToStringStream(StringStream: TJclStringStream; const Level: string);
var
St: string;
begin
@@ -3183,13 +3172,13 @@
StringStream.WriteString(Value, 1, Length(Value));
St := '-->' + sLineBreak;
StringStream.WriteString(St, 1, Length(St));
- if AParent <> nil then
- AParent.DoSaveProgress;
+ if SimpleXML <> nil then
+ SimpleXML.DoSaveProgress;
end;
//=== { TJclSimpleXMLElemCData } =============================================
-procedure TJclSimpleXMLElemCData.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemCData.LoadFromStringStream(StringStream: TJclStringStream);
//<![CDATA[<greeting>Hello, world!</greeting>]]>
const
CS_START_CDATA = '<![CDATA[';
@@ -3204,8 +3193,8 @@
lPos := 1;
lOk := False;
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.ReadUCS4(Ch) do
begin
@@ -3256,11 +3245,11 @@
Value := UCS4ToString(St);
Name := '';
- if AParent <> nil then
- AParent.DoValueParsed('', Value);
+ if SimpleXML <> nil then
+ SimpleXML.DoValueParsed('', Value);
end;
-procedure TJclSimpleXMLElemCData.SaveToStringStream(StringStream: TJclStringStream; const Level: string; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemCData.SaveToStringStream(StringStream: TJclStringStream; const Level: string);
var
St: string;
begin
@@ -3270,13 +3259,13 @@
StringStream.WriteString(Value, 1, Length(Value));
St := ']]>' + sLineBreak;
StringStream.WriteString(St, 1, Length(St));
- if AParent <> nil then
- AParent.DoSaveProgress;
+ if SimpleXML <> nil then
+ SimpleXML.DoSaveProgress;
end;
//=== { TJclSimpleXMLElemText } ==============================================
-procedure TJclSimpleXMLElemText.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemText.LoadFromStringStream(StringStream: TJclStringStream);
var
Ch: UCS4;
USt: TUCS4Array;
@@ -3285,8 +3274,8 @@
SetLength(USt, 0);
St := '';
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.PeekUCS4(Ch) do
begin
@@ -3306,7 +3295,7 @@
if Assigned(SimpleXML) then
begin
- GetSimpleXML.DoDecodeValue(St);
+ SimpleXML.DoDecodeValue(St);
TrimValue := St;
if sxoTrimPrecedingTextWhitespace in SimpleXML.Options then
@@ -3320,11 +3309,11 @@
Value := St;
Name := '';
- if AParent <> nil then
- AParent.DoValueParsed('', St);
+ if SimpleXML <> nil then
+ SimpleXML.DoValueParsed('', St);
end;
-procedure TJclSimpleXMLElemText.SaveToStringStream(StringStream: TJclStringStream; const Level: string; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemText.SaveToStringStream(StringStream: TJclStringStream; const Level: string);
var
St, tmp: string;
begin
@@ -3332,19 +3321,19 @@
if Value <> '' then
begin
tmp := Value;
- if GetSimpleXML <> nil then
- GetSimpleXML.DoEncodeValue(tmp);
+ if SimpleXML <> nil then
+ SimpleXML.DoEncodeValue(tmp);
St := Level + tmp + sLineBreak;
StringStream.WriteString(St, 1, Length(St));
end;
- if AParent <> nil then
- AParent.DoSaveProgress;
+ if SimpleXML <> nil then
+ SimpleXML.DoSaveProgress;
end;
//=== { TJclSimpleXMLElemProcessingInstruction } =============================
procedure TJclSimpleXMLElemProcessingInstruction.LoadFromStringStream(
- StringStream: TJclStringStream; AParent: TJclSimpleXML);
+ StringStream: TJclStringStream);
type
TReadStatus = (rsWaitingOpeningTag, rsOpeningTag, rsOpeningName, rsEndTag1, rsEndTag2);
var
@@ -3359,8 +3348,8 @@
lPos := rsWaitingOpeningTag;
lOk := False;
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.ReadUCS4(Ch) do
begin
@@ -3435,7 +3424,7 @@
end;
procedure TJclSimpleXMLElemProcessingInstruction.SaveToStringStream(
- StringStream: TJclStringStream; const Level: string; AParent: TJclSimpleXML);
+ StringStream: TJclStringStream; const Level: string);
var
St: string;
begin
@@ -3449,21 +3438,21 @@
FProps.SaveToStringStream(StringStream);
St := '?>' + sLineBreak;
StringStream.WriteString(St, 1, Length(St));
- if AParent <> nil then
- AParent.DoSaveProgress;
+ if SimpleXML <> nil then
+ SimpleXML.DoSaveProgress;
end;
//=== { TJclSimpleXMLElemHeader } ============================================
function TJclSimpleXMLElemHeader.GetEncoding: string;
var
- ASimpleXml: TJclSimpleXml;
+ ASimpleXML: TJclSimpleXML;
DefaultCodePage: Word;
begin
- ASimpleXml := SimpleXml;
- if Assigned(ASimpleXml) then
+ ASimpleXML := SimpleXML;
+ if Assigned(ASimpleXML) then
begin
- DefaultCodePage := ASimpleXml.FCodePage;
+ DefaultCodePage := ASimpleXML.CodePage;
{$IFDEF MSWINDOWS}
if DefaultCodePage = CP_ACP then
DefaultCodePage := GetAcp;
@@ -3492,14 +3481,12 @@
Result := Properties.Value('version', '1.0');
end;
-procedure TJclSimpleXMLElemHeader.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemHeader.LoadFromStringStream(StringStream: TJclStringStream);
//<?xml version="1.0" encoding="iso-xyzxx" standalone="yes"?>
var
CodePage: Word;
EncodingProp: TJclSimpleXMLProp;
begin
- inherited LoadFromStringStream(StringStream, AParent);
-
if Assigned(FProps) then
EncodingProp := FProps.ItemNamed['encoding']
else
@@ -3521,19 +3508,18 @@
end;
procedure TJclSimpleXMLElemHeader.SaveToStringStream(
- StringStream: TJclStringStream; const Level: string; AParent: TJclSimpleXML);
+ StringStream: TJclStringStream; const Level: string);
begin
SetVersion(GetVersion);
SetEncoding(GetEncoding);
SetStandalone(GetStandalone);
- inherited SaveToStringStream(StringStream, Level, AParent);
end;
procedure TJclSimpleXMLElemHeader.SetEncoding(const Value: string);
var
Prop: TJclSimpleXMLProp;
begin
- Prop := Properties.GetItemNamed('encoding');
+ Prop := Properties.ItemNamed['encoding'];
if Assigned(Prop) then
Prop.Value := Value
else
@@ -3546,7 +3532,7 @@
const
BooleanValues: array [Boolean] of string = ('no', 'yes');
begin
- Prop := Properties.GetItemNamed('standalone');
+ Prop := Properties.ItemNamed['standalone'];
if Assigned(Prop) then
Prop.Value := BooleanValues[Value]
else
@@ -3557,7 +3543,7 @@
var
Prop: TJclSimpleXMLProp;
begin
- Prop := Properties.GetItemNamed('version');
+ Prop := Properties.ItemNamed['version'];
if Assigned(Prop) then
Prop.Value := Value
else
@@ -3567,7 +3553,7 @@
//=== { TJclSimpleXMLElemDocType } ===========================================
-procedure TJclSimpleXMLElemDocType.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemDocType.LoadFromStringStream(StringStream: TJclStringStream);
{
<!DOCTYPE test [
<!ELEMENT test (#PCDATA) >
@@ -3591,8 +3577,8 @@
lChar := Ord('>');
SetLength(St, 0);
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.ReadUCS4(Ch) do
begin
@@ -3632,19 +3618,19 @@
Name := '';
Value := StrTrimCharsLeft(UCS4ToString(St), CharIsWhiteSpace);
- if AParent <> nil then
- AParent.DoValueParsed('', Value);
+ if SimpleXML <> nil then
+ SimpleXML.DoValueParsed('', Value);
end;
procedure TJclSimpleXMLElemDocType.SaveToStringStream(StringStream: TJclStringStream;
- const Level: string; AParent: TJclSimpleXML);
+ const Level: string);
var
St: string;
begin
St := Level + '<!DOCTYPE ' + Value + '>' + sLineBreak;
StringStream.WriteString(St, 1, Length(St));
- if AParent <> nil then
- AParent.DoSaveProgress;
+ if SimpleXML <> nil then
+ SimpleXML.DoSaveProgress;
end;
//=== { TJclSimpleXMLElemsPrologEnumerator } =================================
@@ -3707,7 +3693,7 @@
Result := TJclSimpleXMLElem(FElems.Objects[Index]);
end;
-procedure TJclSimpleXMLElemsProlog.LoadFromStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemsProlog.LoadFromStringStream(StringStream: TJclStringStream);
{<?xml version="1.0" encoding="UTF-8" ?>
<!-- Test -->
<!DOCTYPE greeting [
@@ -3727,8 +3713,8 @@
SetLength(St, 0);
lPos := 0;
- if AParent <> nil then
- AParent.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
+ if SimpleXML <> nil then
+ SimpleXML.DoLoadProgress(StringStream.Stream.Position, StringStream.Stream.Size);
while StringStream.PeekUCS4(Ch) do
begin
@@ -3757,22 +3743,22 @@
lEnd := True
else
if UCS4ArrayEquals(St, '<!--') then
- lElem := TJclSimpleXMLElemComment.Create(nil)
+ lElem := TJclSimpleXMLElemComment.Create(SimpleXML)
else
if UCS4ArrayEquals(St, '<?xml-stylesheet') then
- lElem := TJclSimpleXMLElemSheet.Create(nil)
+ lElem := TJclSimpleXMLElemSheet.Create(SimpleXML)
else
if UCS4ArrayEquals(St, '<?xml ') then
- lElem := TJclSimpleXMLElemHeader.Create(nil)
+ lElem := TJclSimpleXMLElemHeader.Create(SimpleXML)
else
if UCS4ArrayEquals(St, '<!DOCTYPE') then
- lElem := TJclSimpleXMLElemDocType.Create(nil)
+ lElem := TJclSimpleXMLElemDocType.Create(SimpleXML)
else
if UCS4ArrayEquals(St, '<?mso-application') then
- lElem := TJclSimpleXMLElemMSOApplication.Create(nil)
+ lElem := TJclSimpleXMLElemMSOApplication.Create(SimpleXML)
else
if (Length(St) > 3) and (St[1] = Ord('?')) and UnicodeIsWhiteSpace(St[High(St)]) then
- lElem := TJclSimpleXMLElemProcessingInstruction.Create(nil)
+ lElem := TJclSimpleXMLElemProcessingInstruction.Create(SimpleXML)
else
if (Length(St) > 1) and (St[1] <> Ord('!')) and (St[1] <> Ord('?')) then
lEnd := True;
@@ -3782,8 +3768,8 @@
else
if lElem <> nil then
begin
- lElem.LoadFromStringStream(StringStream, AParent);
FElems.AddObject(lElem.Name, lElem);
+ lElem.LoadFromStringStream(StringStream);
SetLength(St, 0);
lPos := 0;
end;
@@ -3792,13 +3778,13 @@
end;
end;
-procedure TJclSimpleXMLElemsProlog.SaveToStringStream(StringStream: TJclStringStream; AParent: TJclSimpleXML);
+procedure TJclSimpleXMLElemsProlog.SaveToStringStream(StringStream: TJclStringStream);
var
I: Integer;
begin
FindHeader;
for I := 0 to Count - 1 do
- Item[I].SaveToStringStream(StringStream, '', AParent);
+ Item[I].SaveToStringStream(StringStream, '');
end;
function VarXML: TVarType;
@@ -3840,7 +3826,7 @@
ConversionString := TJclUTF16Stream.Create(StorageStream, False);
try
ConversionString.WriteBOM;
- TJclSimpleXmlElem(Source.vAny).SaveToStringStream(ConversionString, '', nil);
+ TJclSimpleXMLElem(Source.vAny).SaveToStringStream(ConversionString, '');
ConversionString.Flush;
finally
ConversionString.Free;
@@ -3861,7 +3847,7 @@
{$ENDIF ~SUPPORTS_UNICODE}
try
ConversionString.WriteBOM;
- TJclSimpleXmlElem(Source.vAny).SaveToStringStream(ConversionString, '', nil);
+ TJclSimpleXMLElem(Source.vAny).SaveToStringStream(ConversionString, '');
ConversionString.Flush;
finally
ConversionString.Free;
@@ -3879,7 +3865,7 @@
ConversionString := TJclUTF16Stream.Create(StorageStream, False);
try
ConversionString.WriteBOM;
- TJclSimpleXmlElem(Source.vAny).SaveToStringStream(ConversionString, '', nil);
+ TJclSimpleXMLElem(Source.vAny).SaveToStringStream(ConversionString, '');
ConversionString.Flush;
finally
ConversionString.Free;
@@ -3929,7 +3915,7 @@
Result := False;
if (Length(Arguments) = 1) and (Arguments[0].vType in [vtInteger, vtExtended]) then
begin
- VXML := TJclSimpleXmlElem(V.VAny);
+ VXML := TJclSimpleXMLElem(V.VAny);
K := Arguments[0].vInteger;
J := 0;
@@ -4012,7 +3998,7 @@
lProp: TJclSimpleXMLProp;
begin
Result := False;
- VXML := TJclSimpleXmlElem(V.VAny);
+ VXML := TJclSimpleXMLElem(V.VAny);
if VXML.HasItems then
begin
LXML := VXML.Items.ItemNamed[Name];
@@ -4140,9 +4126,7 @@
Exit;
end;
// (p3) if we get here, an xml header was not found
- Result := TJclSimpleXMLElemHeader.Create(nil);
- Result.Name := 'xml';
- Result.FSimpleXml := FSimpleXml;
+ Result := TJclSimpleXMLElemHeader.Create(SimpleXML);
FElems.AddObject('', Result);
end;
@@ -4150,7 +4134,7 @@
begin
// make sure there is an xml header
FindHeader;
- Result := TJclSimpleXMLElemSheet.Create(nil, 'xml-stylesheet');
+ Result := TJclSimpleXMLElemSheet.Create('xml-stylesheet');
Result.Properties.Add('type',AType);
Result.Properties.Add('href',AHRef);
FElems.AddObject('xml-stylesheet', Result);
@@ -4160,7 +4144,7 @@
begin
// make sure there is an xml header
FindHeader;
- Result := TJclSimpleXMLElemMSOApplication.Create(nil, 'mso-application');
+ Result := TJclSimpleXMLElemMSOApplication.Create('mso-application');
Result.Properties.Add('progid',AProgId);
FElems.AddObject('mso-application', Result);
end;
@@ -4169,8 +4153,7 @@
begin
// make sure there is an xml header
FindHeader;
- Result := TJclSimpleXMLElemComment.Create(nil);
- Result.Value := AValue;
+ Result := TJclSimpleXMLElemComment.Create('', AValue);
FElems.AddObject('', Result);
end;
@@ -4178,8 +4161,7 @@
begin
// make sure there is an xml header
FindHeader;
- Result := TJclSimpleXMLElemDocType.Create(nil);
- Result.Value := AValue;
+ Result := TJclSimpleXMLElemDocType.Create('', AValue);
FElems.AddObject('', Result);
end;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-13 20:43:01
|
Revision: 3726
http://jcl.svn.sourceforge.net/jcl/?rev=3726&view=rev
Author: outchy
Date: 2012-02-13 20:42:51 +0000 (Mon, 13 Feb 2012)
Log Message:
-----------
fix for XE compiler AV.
Modified Paths:
--------------
trunk/jcl/source/common/JclHashSets.pas
trunk/jcl/source/prototypes/JclHashSets.pas
trunk/jcl/source/prototypes/containers/JclHashSets.imp
Modified: trunk/jcl/source/common/JclHashSets.pas
===================================================================
--- trunk/jcl/source/common/JclHashSets.pas 2012-02-13 03:48:56 UTC (rev 3725)
+++ trunk/jcl/source/common/JclHashSets.pas 2012-02-13 20:42:51 UTC (rev 3726)
@@ -1088,18 +1088,19 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- {$HPPEMIT 'template<typename T> class DELPHICLASS TJclHashSetBucket__1;'}
+ TJclHashSetBucket<T> = class
+ public
+ type
+ TDynArray = array of T;
+ public
+ Size: Integer;
+ Entries: TDynArray;
+ procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ end;
- TJclHashSetBucket<T> = class;
- TJclHashSetIterator<T> = class;
-
TJclHashSet<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
IJclEqualityComparer<T>, IJclHashConverter<T>, IJclCollection<T>, IJclSet<T>)
- protected
- type
- TDynArray = array of T;
- procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
private
FBuckets: array of TJclHashSetBucket<T>;
FHashToRangeFunction: TJclHashToRangeFunction;
@@ -1138,12 +1139,6 @@
procedure Union(const ACollection: IJclCollection<T>);
end;
- TJclHashSetBucket<T> = class
- public
- Size: Integer;
- Entries: TJclHashSet<T>.TDynArray;
- end;
-
TJclHashSetIterator<T> = class(TJclAbstractIterator, IJclIterator<T>)
protected
FBucketIndex: Integer;
@@ -13009,6 +13004,42 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
+//=== { TJclHashSetBucket<T> } =================================================
+
+procedure TJclHashSetBucket<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+var
+ I: Integer;
+begin
+ if FromIndex < ToIndex then
+ begin
+ for I := Count - 1 downto 0 do
+ List[ToIndex + I] := List[FromIndex + I];
+
+ if (ToIndex - FromIndex) < Count then
+ // overlapped source and target
+ for I := 0 to ToIndex - FromIndex - 1 do
+ List[FromIndex + I] := Default(T)
+ else
+ // independant
+ for I := 0 to Count - 1 do
+ List[FromIndex + I] := Default(T);
+ end
+ else
+ begin
+ for I := 0 to Count - 1 do
+ List[ToIndex + I] := List[FromIndex + I];
+
+ if (FromIndex - ToIndex) < Count then
+ // overlapped source and target
+ for I := Count - FromIndex + ToIndex to Count - 1 do
+ List[FromIndex + I] := Default(T)
+ else
+ // independant
+ for I := 0 to Count - 1 do
+ List[FromIndex + I] := Default(T);
+ end;
+end;
+
//=== { TJclHashSet<T> } ====================================================
constructor TJclHashSet<T>.Create(ACapacity: Integer; AOwnsItems: Boolean);
@@ -13290,7 +13321,7 @@
Result := True;
Bucket.Entries[I] := Default(T);
if I < Length(Bucket.Entries) - 1 then
- MoveArray(Bucket.Entries, I + 1, I, Bucket.Size - I - 1);
+ Bucket.MoveArray(Bucket.Entries, I + 1, I, Bucket.Size - I - 1);
Dec(Bucket.Size);
Dec(FSize);
Break;
@@ -13523,7 +13554,7 @@
begin
Bucket.Entries[J] := FreeItem(Bucket.Entries[J]);
if J < Length(Bucket.Entries) - 1 then
- MoveArray(Bucket.Entries, J + 1, J, Bucket.Size - J - 1);
+ Bucket.MoveArray(Bucket.Entries, J + 1, J, Bucket.Size - J - 1);
Dec(Bucket.Size);
Dec(FSize);
end;
@@ -13580,40 +13611,6 @@
AddAll(ACollection);
end;
-procedure TJclHashSet<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
-var
- I: Integer;
-begin
- if FromIndex < ToIndex then
- begin
- for I := Count - 1 downto 0 do
- List[ToIndex + I] := List[FromIndex + I];
-
- if (ToIndex - FromIndex) < Count then
- // overlapped source and target
- for I := 0 to ToIndex - FromIndex - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end
- else
- begin
- for I := 0 to Count - 1 do
- List[ToIndex + I] := List[FromIndex + I];
-
- if (FromIndex - ToIndex) < Count then
- // overlapped source and target
- for I := Count - FromIndex + ToIndex to Count - 1 do
- List[FromIndex + I] := Default(T)
- else
- // independant
- for I := 0 to Count - 1 do
- List[FromIndex + I] := Default(T);
- end;
-end;
-
//=== { TJclHashSetIterator<T> } ============================================
constructor TJclHashSetIterator<T>.Create(AOwnHashSet: TJclHashSet<T>;
Modified: trunk/jcl/source/prototypes/JclHashSets.pas
===================================================================
--- trunk/jcl/source/prototypes/JclHashSets.pas 2012-02-13 03:48:56 UTC (rev 3725)
+++ trunk/jcl/source/prototypes/JclHashSets.pas 2012-02-13 20:42:51 UTC (rev 3726)
@@ -65,19 +65,18 @@
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- {$HPPEMIT 'template<typename T> class DELPHICLASS TJclHashSetBucket__1;'}
+ TJclHashSetBucket<T> = class
+ public
+ type
+ TDynArray = array of T;
+ public
+ Size: Integer;
+ Entries: TDynArray;
+ procedure MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+ end;
- TJclHashSetBucket<T> = class;
- TJclHashSetIterator<T> = class;
+ {$JPPEXPANDMACRO JCLHASHSETINT(TJclHashSet<T>,TJclAbstractContainer<T>,TJclHashSetBucket<T>,IJclCollection<T>,IJclSet<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclHashConverter<T>, IJclItemOwner<T>\,,,,const ,AItem,T,; AOwnsItems: Boolean)}
- {$JPPEXPANDMACRO JCLHASHSETINT(TJclHashSet<T>,TJclAbstractContainer<T>,TJclHashSetBucket<T>,IJclCollection<T>,IJclSet<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclHashConverter<T>, IJclItemOwner<T>\,,
-protected
- type
- TDynArray = array of T;
- procedure MoveArray(var List: TDynArray; FromIndex\, ToIndex\, Count: Integer);,,const ,AItem,T,; AOwnsItems: Boolean)}
-
- {$JPPEXPANDMACRO JCLHASHSETTYPEINT(TJclHashSetBucket<T>,TJclHashSet<T>.TDynArray)}
-
{$JPPEXPANDMACRO JCLHASHSETITRINT(TJclHashSetIterator<T>,IJclIterator<T>,TJclHashSet<T>,const ,AItem,T,GetItem,SetItem)}
// E = External helper to compare items for equality
@@ -145,16 +144,16 @@
implementation
(*$JPPLOOP TRUETYPEINDEX TRUETYPECOUNT
-{$JPPEXPANDMACRO JCLHASHSETIMP(,,,,,,,,,,,)}
+{$JPPEXPANDMACRO JCLHASHSETIMP(,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLHASHSETITRIMP(,,,,,,,,,)}
*)
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
-{$JPPEXPANDMACRO JCLHASHSETIMP(TJclHashSet<T>,TJclHashSetBucket<T>,; AOwnsItems: Boolean,AOwnsItems,IJclCollection<T>,TJclHashSetIterator<T>,IJclIterator<T>,const ,AItem,T,Default(T),FreeItem)}
+//=== { TJclHashSetBucket<T> } =================================================
-procedure TJclHashSet<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
+procedure TJclHashSetBucket<T>.MoveArray(var List: TDynArray; FromIndex, ToIndex, Count: Integer);
var
I: Integer;
begin
@@ -188,6 +187,8 @@
end;
end;
+{$JPPEXPANDMACRO JCLHASHSETIMP(TJclHashSet<T>,TJclHashSetBucket<T>,; AOwnsItems: Boolean,AOwnsItems,IJclCollection<T>,TJclHashSetIterator<T>,IJclIterator<T>,Bucket.,const ,AItem,T,Default(T),FreeItem)}
+
{$JPPEXPANDMACRO JCLHASHSETITRIMP(TJclHashSetIterator<T>,TJclHashSet<T>,TJclHashSetBucket<T>,IJclIterator<T>,const ,AItem,T,Default(T),GetItem,SetItem)}
//=== { TJclHashSetE<T> } ====================================================
Modified: trunk/jcl/source/prototypes/containers/JclHashSets.imp
===================================================================
--- trunk/jcl/source/prototypes/containers/JclHashSets.imp 2012-02-13 03:48:56 UTC (rev 3725)
+++ trunk/jcl/source/prototypes/containers/JclHashSets.imp 2012-02-13 20:42:51 UTC (rev 3726)
@@ -1,5 +1,5 @@
(*$JPPDEFINEMACRO JCLHASHSETIMP(SELFCLASSNAME, BUCKETTYPENAME, OWNERSHIPDECLARATION, OWNERSHIPPARAMETER,
- COLLECTIONINTERFACENAME, ITRCLASSNAME, ITRINTERFACENAME,
+ COLLECTIONINTERFACENAME, ITRCLASSNAME, ITRINTERFACENAME, MOVEARRAYPREFIX,
CONSTKEYWORD, PARAMETERNAME, TYPENAME, DEFAULTVALUE, RELEASERNAME)
//=== { SELFCLASSNAME } ====================================================
@@ -207,7 +207,7 @@
Result := True;
Bucket.Entries[I] := DEFAULTVALUE;
if I < Length(Bucket.Entries) - 1 then
- MoveArray(Bucket.Entries, I + 1, I, Bucket.Size - I - 1);
+ MOVEARRAYPREFIXMoveArray(Bucket.Entries, I + 1, I, Bucket.Size - I - 1);
Dec(Bucket.Size);
Dec(FSize);
Break;
@@ -367,7 +367,7 @@
begin
Bucket.Entries[J] := RELEASERNAME(Bucket.Entries[J]);
if J < Length(Bucket.Entries) - 1 then
- MoveArray(Bucket.Entries, J + 1, J, Bucket.Size - J - 1);
+ MOVEARRAYPREFIXMoveArray(Bucket.Entries, J + 1, J, Bucket.Size - J - 1);
Dec(Bucket.Size);
Dec(FSize);
end;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jg...@us...> - 2012-02-13 03:49:02
|
Revision: 3725
http://jcl.svn.sourceforge.net/jcl/?rev=3725&view=rev
Author: jgsoft
Date: 2012-02-13 03:48:56 +0000 (Mon, 13 Feb 2012)
Log Message:
-----------
Replaced soFromBeginning/Current/End with soBeginning/Current/End in JclCompression.pas for consistency.
Modified Paths:
--------------
trunk/jcl/source/common/JclCompression.pas
Modified: trunk/jcl/source/common/JclCompression.pas
===================================================================
--- trunk/jcl/source/common/JclCompression.pas 2012-02-12 22:30:08 UTC (rev 3724)
+++ trunk/jcl/source/common/JclCompression.pas 2012-02-13 03:48:56 UTC (rev 3725)
@@ -2644,7 +2644,7 @@
begin
if FInflateInitialized then
begin
- FStream.Seek(-ZLibRecord.avail_in, soFromCurrent);
+ FStream.Seek(-ZLibRecord.avail_in, soCurrent);
ZLibCheck(inflateEnd(ZLibRecord));
end;
@@ -3091,7 +3091,7 @@
begin
StartPos := FStream.Position;
try
- FStream.Seek(-SizeOf(AFooter), soFromEnd);
+ FStream.Seek(-SizeOf(AFooter), soEnd);
AFooter.DataCRC32 := 0;
AFooter.DataSize := 0;
FStream.ReadBuffer(AFooter, SizeOf(AFooter));
@@ -3116,7 +3116,7 @@
begin
StartPos := FStream.Position;
try
- FStream.Seek(-SizeOf(AFooter), soFromEnd);
+ FStream.Seek(-SizeOf(AFooter), soEnd);
AFooter.DataSize := 0;
AFooter.DataCRC32 := 0;
FStream.ReadBuffer(AFooter, SizeOf(AFooter));
@@ -3398,7 +3398,7 @@
begin
if FInflateInitialized then
begin
- FStream.Seek(-BZLibRecord.avail_in, soFromCurrent);
+ FStream.Seek(-BZLibRecord.avail_in, soCurrent);
BZIP2LibCheck(BZ2_bzDecompressEnd(BZLibRecord));
end;
@@ -5696,9 +5696,9 @@
if Assigned(FStream) then
begin
Result := S_OK;
- // STREAM_SEEK_SET = 0 = soFromBeginning
- // STREAM_SEEK_CUR = 1 = soFromCurrent
- // STREAM_SEEK_END = 2 = soFromEnd
+ // STREAM_SEEK_SET = 0 = soBeginning
+ // STREAM_SEEK_CUR = 1 = soCurrent
+ // STREAM_SEEK_END = 2 = soEnd
NewPos := FStream.Seek(Offset, TSeekOrigin(SeekOrigin));
if Assigned(NewPosition) then
NewPosition^ := NewPos;
@@ -5861,9 +5861,9 @@
if Assigned(FStream) then
begin
- // STREAM_SEEK_SET = 0 = soFromBeginning
- // STREAM_SEEK_CUR = 1 = soFromCurrent
- // STREAM_SEEK_END = 2 = soFromEnd
+ // STREAM_SEEK_SET = 0 = soBeginning
+ // STREAM_SEEK_CUR = 1 = soCurrent
+ // STREAM_SEEK_END = 2 = soEnd
NewPos := FStream.Seek(Offset, TSeekOrigin(SeekOrigin));
if Assigned(NewPosition) then
NewPosition^ := NewPos;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jfu...@us...> - 2012-02-12 22:30:14
|
Revision: 3724
http://jcl.svn.sourceforge.net/jcl/?rev=3724&view=rev
Author: jfudickar
Date: 2012-02-12 22:30:08 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
Delphi XE2 Compatible
Modified Paths:
--------------
trunk/jcl/source/windows/JclConsole.pas
Modified: trunk/jcl/source/windows/JclConsole.pas
===================================================================
--- trunk/jcl/source/windows/JclConsole.pas 2012-02-12 21:53:25 UTC (rev 3723)
+++ trunk/jcl/source/windows/JclConsole.pas 2012-02-12 22:30:08 UTC (rev 3724)
@@ -496,17 +496,17 @@
function ProcessMessage(var Msg: TMsg): Boolean;
begin
Result := False;
- if Windows.PeekMessage(Msg, 0, 0, 0, PM_REMOVE) then
+ if {$IFDEF HAS_UNITSCOPE}WinApi.{$ENDIF}Windows.PeekMessage(Msg, 0, 0, 0, PM_REMOVE) then
begin
Result := True;
- Windows.TranslateMessage(Msg);
- Windows.DispatchMessage(Msg);
+ {$IFDEF HAS_UNITSCOPE}WinApi.{$ENDIF}Windows.TranslateMessage(Msg);
+ {$IFDEF HAS_UNITSCOPE}WinApi.{$ENDIF}Windows.DispatchMessage(Msg);
end;
end;
procedure ProcessMessages;
var
- Msg: Windows.TMsg;
+ Msg: {$IFDEF HAS_UNITSCOPE}WinApi.{$ENDIF}Windows.TMsg;
begin
while ProcessMessage(Msg) do;
end;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <usc...@us...> - 2012-02-12 21:53:31
|
Revision: 3723
http://jcl.svn.sourceforge.net/jcl/?rev=3723&view=rev
Author: uschuster
Date: 2012-02-12 21:53:25 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
fixed TJclSimpleXML.SaveToString(seAnsi) for D2009, D2010 and DXE (revision 3627 didn't make sense to me)
Revision Links:
--------------
http://jcl.svn.sourceforge.net/jcl/?rev=3627&view=rev
Modified Paths:
--------------
trunk/jcl/source/common/JclSimpleXml.pas
Modified: trunk/jcl/source/common/JclSimpleXml.pas
===================================================================
--- trunk/jcl/source/common/JclSimpleXml.pas 2012-02-12 21:44:29 UTC (rev 3722)
+++ trunk/jcl/source/common/JclSimpleXml.pas 2012-02-12 21:53:25 UTC (rev 3723)
@@ -1355,10 +1355,8 @@
begin
{$IFDEF SUPPORTS_UNICODE}
case Encoding of
- {$IFDEF DELPHIXE2_UP}
seAnsi:
- Stream := TStringStream.Create('', TEncoding.ANSI);
- {$ENDIF DELPHIXE2_UP}
+ Stream := TStringStream.Create('', TEncoding.{$IFDEF COMPILER16_UP}ANSI{$ELSE}Default{$ENDIF});
seUTF8:
Stream := TStringStream.Create('', TEncoding.UTF8);
else
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-12 21:44:35
|
Revision: 3722
http://jcl.svn.sourceforge.net/jcl/?rev=3722&view=rev
Author: outchy
Date: 2012-02-12 21:44:29 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
Mantis 5777: Vista and onwards : OS terminates console application immidiately after returning from CtrlHandler procedure.
(polished patch)
Modified Paths:
--------------
trunk/jcl/source/windows/JclConsole.pas
Modified: trunk/jcl/source/windows/JclConsole.pas
===================================================================
--- trunk/jcl/source/windows/JclConsole.pas 2012-02-12 21:30:08 UTC (rev 3721)
+++ trunk/jcl/source/windows/JclConsole.pas 2012-02-12 21:44:29 UTC (rev 3722)
@@ -488,6 +488,39 @@
var
g_DefaultConsole: TJclConsole = nil;
+// Due to changes in Vista and onwards Windows will terminate
+// console immidiately after executing CtrlHandler. We need put some wait in it.
+// These subprograms may only work if main application is console and it creates its own message pump.
+// On GUI one these should work always.
+
+function ProcessMessage(var Msg: TMsg): Boolean;
+begin
+ Result := False;
+ if Windows.PeekMessage(Msg, 0, 0, 0, PM_REMOVE) then
+ begin
+ Result := True;
+ Windows.TranslateMessage(Msg);
+ Windows.DispatchMessage(Msg);
+ end;
+end;
+
+procedure ProcessMessages;
+var
+ Msg: Windows.TMsg;
+begin
+ while ProcessMessage(Msg) do;
+end;
+
+procedure Wait(N: LongWord);
+var
+ TickCount: LongWord;
+begin
+ SleepEx(N, False);
+ TickCount := GetTickCount + N;
+ while GetTickCount < TickCount do
+ ProcessMessages;
+end;
+
function CtrlHandler(CtrlType: DWORD): BOOL; stdcall;
var
Console: TJclConsole;
@@ -520,6 +553,7 @@
// (rom) dubious. An exception implies that an event has been handled.
Result := False;
end;
+ Wait(200);
end;
//=== { TJclConsole } ========================================================
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-12 21:30:14
|
Revision: 3721
http://jcl.svn.sourceforge.net/jcl/?rev=3721&view=rev
Author: outchy
Date: 2012-02-12 21:30:08 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
Mantis 5754: JclCreateThreadStackTrace fails unpredictably on Win7 64 bit.
TContext needs to be aligned on 16-byte boundaries.
Modified Paths:
--------------
trunk/jcl/source/windows/JclDebug.pas
Modified: trunk/jcl/source/windows/JclDebug.pas
===================================================================
--- trunk/jcl/source/windows/JclDebug.pas 2012-02-12 20:12:16 UTC (rev 3720)
+++ trunk/jcl/source/windows/JclDebug.pas 2012-02-12 21:30:08 UTC (rev 3721)
@@ -4822,21 +4822,31 @@
function JclCreateThreadStackTrace(Raw: Boolean; const ThreadHandle: THandle): TJclStackInfoList;
var
- C: CONTEXT;
+ ContextMemory: Pointer;
+ AlignedContext: PContext;
begin
Result := nil;
- ResetMemory(C, SizeOf(C));
- C.ContextFlags := CONTEXT_FULL;
- {$IFDEF CPU32}
- if GetThreadContext(ThreadHandle, C) then
- Result := JclCreateStackList(Raw, -1, Pointer(C.Eip), False, Pointer(C.Ebp),
- Pointer(GetThreadTopOfStack(ThreadHandle)));
- {$ENDIF CPU32}
- {$IFDEF CPU64}
- if GetThreadContext(ThreadHandle, C) then
- Result := JclCreateStackList(Raw, -1, Pointer(C.Rip), False, Pointer(C.Rbp),
- Pointer(GetThreadTopOfStack(ThreadHandle)));
- {$ENDIF CPU64}
+ GetMem(ContextMemory, SizeOf(TContext) + 15);
+ try
+ if (Cardinal(ContextMemory) and 15) <> 0 then
+ AlignedContext := PContext((Cardinal(ContextMemory) + 16) and $FFFFFFF0)
+ else
+ AlignedContext := ContextMemory;
+ ResetMemory(AlignedContext^, SizeOf(AlignedContext^));
+ AlignedContext^.ContextFlags := CONTEXT_FULL;
+ {$IFDEF CPU32}
+ if GetThreadContext(ThreadHandle, AlignedContext^) then
+ Result := JclCreateStackList(Raw, -1, Pointer(AlignedContext^.Eip), False, Pointer(AlignedContext^.Ebp),
+ Pointer(GetThreadTopOfStack(ThreadHandle)));
+ {$ENDIF CPU32}
+ {$IFDEF CPU64}
+ if GetThreadContext(ThreadHandle, AlignedContext^) then
+ Result := JclCreateStackList(Raw, -1, Pointer(AlignedContext^.Rip), False, Pointer(AlignedContext^.Rbp),
+ Pointer(GetThreadTopOfStack(ThreadHandle)));
+ {$ENDIF CPU64}
+ finally
+ FreeMem(ContextMemory);
+ end;
end;
function JclCreateThreadStackTraceFromID(Raw: Boolean; ThreadID: DWORD): TJclStackInfoList;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-12 20:12:26
|
Revision: 3720
http://jcl.svn.sourceforge.net/jcl/?rev=3720&view=rev
Author: outchy
Date: 2012-02-12 20:12:16 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
Mantis 5761: AnsiStrHashSet & WideStrHashSet raise access violations (HashingExample).
Reimplement hash sets from scratch with full integration with jppContainer.
Modified Paths:
--------------
trunk/jcl/packages/c6/JclDeveloperTools.bpk
trunk/jcl/packages/c6/JclDeveloperTools.dpk
trunk/jcl/packages/cs1/JclDeveloperTools.dpk
trunk/jcl/packages/d10/JclDeveloperTools.dpk
trunk/jcl/packages/d11/JclDeveloperTools.dpk
trunk/jcl/packages/d11/JclDeveloperTools.dproj
trunk/jcl/packages/d12/JclDeveloperTools.dpk
trunk/jcl/packages/d12/JclDeveloperTools.dproj
trunk/jcl/packages/d14/JclDeveloperTools.dpk
trunk/jcl/packages/d14/JclDeveloperTools.dproj
trunk/jcl/packages/d15/JclDeveloperTools.dpk
trunk/jcl/packages/d15/JclDeveloperTools.dproj
trunk/jcl/packages/d16/JclDeveloperTools.dpk
trunk/jcl/packages/d16/JclDeveloperTools.dproj
trunk/jcl/packages/d6/JclDeveloperTools.dpk
trunk/jcl/packages/d7/JclDeveloperTools.dpk
trunk/jcl/packages/d8/JclDeveloperTools.dpk
trunk/jcl/packages/d9/JclDeveloperTools.dpk
trunk/jcl/packages/fpc/JclDeveloperTools.lpk
trunk/jcl/packages/fpc/JclDeveloperTools.pas
trunk/jcl/packages/help/JclDeveloperTools.dox
trunk/jcl/packages/xml/JclDeveloperTools-R.xml
trunk/jcl/source/common/JclHashSets.pas
trunk/jcl/source/common/JclPreProcessorContainerKnownTypes.pas
trunk/jcl/source/common/JclPreProcessorContainerTypes.pas
trunk/jcl/source/prototypes/JclHashSets.pas
trunk/jcl/source/prototypes/containers/JclHashSets.imp
trunk/jcl/source/prototypes/containers/JclHashSets.int
Added Paths:
-----------
trunk/jcl/source/common/JclPreProcessorHashSetsTemplates.pas
Modified: trunk/jcl/packages/c6/JclDeveloperTools.bpk
===================================================================
--- trunk/jcl/packages/c6/JclDeveloperTools.bpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/c6/JclDeveloperTools.bpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -5,7 +5,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:23 UTC
+ Last generated: 12-02-2012 19:42:40 UTC
*****************************************************************************
-->
<PROJECT>
@@ -30,6 +30,7 @@
..\..\lib\c6\JclPreProcessorContainerTypes.obj
..\..\lib\c6\JclPreProcessorExcDlgTemplates.obj
..\..\lib\c6\JclPreProcessorHashMapsTemplates.obj
+ ..\..\lib\c6\JclPreProcessorHashSetsTemplates.obj
..\..\lib\c6\JclPreProcessorLexer.obj
..\..\lib\c6\JclPreProcessorLinkedListsTemplates.obj
..\..\lib\c6\JclPreProcessorParser.obj
@@ -115,6 +116,7 @@
<FILE FILENAME="..\..\source\common\JclPreProcessorContainerTypes.pas" FORMNAME="" UNITNAME="JclPreProcessorContainerTypes" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\common\JclPreProcessorExcDlgTemplates.pas" FORMNAME="" UNITNAME="JclPreProcessorExcDlgTemplates" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\common\JclPreProcessorHashMapsTemplates.pas" FORMNAME="" UNITNAME="JclPreProcessorHashMapsTemplates" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
+ <FILE FILENAME="..\..\source\common\JclPreProcessorHashSetsTemplates.pas" FORMNAME="" UNITNAME="JclPreProcessorHashSetsTemplates" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\common\JclPreProcessorLexer.pas" FORMNAME="" UNITNAME="JclPreProcessorLexer" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas" FORMNAME="" UNITNAME="JclPreProcessorLinkedListsTemplates" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\..\source\common\JclPreProcessorParser.pas" FORMNAME="" UNITNAME="JclPreProcessorParser" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
Modified: trunk/jcl/packages/c6/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/c6/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/c6/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:23 UTC
+ Last generated: 12-02-2012 19:42:40 UTC
-----------------------------------------------------------------------------
}
@@ -64,6 +64,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/cs1/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/cs1/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/cs1/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:25 UTC
+ Last generated: 12-02-2012 19:42:41 UTC
-----------------------------------------------------------------------------
}
@@ -63,6 +63,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d10/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d10/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d10/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:25 UTC
+ Last generated: 12-02-2012 19:42:42 UTC
-----------------------------------------------------------------------------
}
@@ -65,6 +65,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d11/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d11/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d11/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:25 UTC
+ Last generated: 12-02-2012 19:42:42 UTC
-----------------------------------------------------------------------------
}
@@ -66,6 +66,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d11/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d11/JclDeveloperTools.dproj 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d11/JclDeveloperTools.dproj 2012-02-12 20:12:16 UTC (rev 3720)
@@ -105,6 +105,7 @@
<DCCReference Include="..\..\source\common\JclPreProcessorContainerTypes.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorExcDlgTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorHashMapsTemplates.pas"/>
+ <DCCReference Include="..\..\source\common\JclPreProcessorHashSetsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLexer.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorParser.pas"/>
Modified: trunk/jcl/packages/d12/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d12/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d12/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:25 UTC
+ Last generated: 12-02-2012 19:42:43 UTC
-----------------------------------------------------------------------------
}
@@ -65,6 +65,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d12/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d12/JclDeveloperTools.dproj 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d12/JclDeveloperTools.dproj 2012-02-12 20:12:16 UTC (rev 3720)
@@ -80,6 +80,7 @@
<DCCReference Include="..\..\source\common\JclPreProcessorContainerTypes.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorExcDlgTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorHashMapsTemplates.pas"/>
+ <DCCReference Include="..\..\source\common\JclPreProcessorHashSetsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLexer.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorParser.pas"/>
Modified: trunk/jcl/packages/d14/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d14/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d14/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:26 UTC
+ Last generated: 12-02-2012 19:42:43 UTC
-----------------------------------------------------------------------------
}
@@ -65,6 +65,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d14/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d14/JclDeveloperTools.dproj 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d14/JclDeveloperTools.dproj 2012-02-12 20:12:16 UTC (rev 3720)
@@ -82,6 +82,7 @@
<DCCReference Include="..\..\source\common\JclPreProcessorContainerTypes.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorExcDlgTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorHashMapsTemplates.pas"/>
+ <DCCReference Include="..\..\source\common\JclPreProcessorHashSetsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLexer.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorParser.pas"/>
Modified: trunk/jcl/packages/d15/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d15/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d15/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:26 UTC
+ Last generated: 12-02-2012 19:42:43 UTC
-----------------------------------------------------------------------------
}
@@ -64,6 +64,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d15/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d15/JclDeveloperTools.dproj 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d15/JclDeveloperTools.dproj 2012-02-12 20:12:16 UTC (rev 3720)
@@ -89,6 +89,7 @@
<DCCReference Include="..\..\source\common\JclPreProcessorContainerTypes.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorExcDlgTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorHashMapsTemplates.pas"/>
+ <DCCReference Include="..\..\source\common\JclPreProcessorHashSetsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLexer.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorParser.pas"/>
Modified: trunk/jcl/packages/d16/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d16/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d16/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 13-08-2011 10:58:21 UTC
+ Last generated: 12-02-2012 19:42:44 UTC
-----------------------------------------------------------------------------
}
@@ -64,6 +64,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d16/JclDeveloperTools.dproj
===================================================================
--- trunk/jcl/packages/d16/JclDeveloperTools.dproj 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d16/JclDeveloperTools.dproj 2012-02-12 20:12:16 UTC (rev 3720)
@@ -170,6 +170,7 @@
<DCCReference Include="..\..\source\common\JclPreProcessorContainerTypes.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorExcDlgTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorHashMapsTemplates.pas"/>
+ <DCCReference Include="..\..\source\common\JclPreProcessorHashSetsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLexer.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas"/>
<DCCReference Include="..\..\source\common\JclPreProcessorParser.pas"/>
Modified: trunk/jcl/packages/d6/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d6/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d6/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:23 UTC
+ Last generated: 12-02-2012 19:42:40 UTC
-----------------------------------------------------------------------------
}
@@ -64,6 +64,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d7/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d7/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d7/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:24 UTC
+ Last generated: 12-02-2012 19:42:40 UTC
-----------------------------------------------------------------------------
}
@@ -64,6 +64,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d8/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d8/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d8/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:24 UTC
+ Last generated: 12-02-2012 19:42:41 UTC
-----------------------------------------------------------------------------
}
@@ -63,6 +63,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/d9/JclDeveloperTools.dpk
===================================================================
--- trunk/jcl/packages/d9/JclDeveloperTools.dpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/d9/JclDeveloperTools.dpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -4,7 +4,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:25 UTC
+ Last generated: 12-02-2012 19:42:41 UTC
-----------------------------------------------------------------------------
}
@@ -64,6 +64,7 @@
JclPreProcessorContainerTypes in '..\..\source\common\JclPreProcessorContainerTypes.pas' ,
JclPreProcessorExcDlgTemplates in '..\..\source\common\JclPreProcessorExcDlgTemplates.pas' ,
JclPreProcessorHashMapsTemplates in '..\..\source\common\JclPreProcessorHashMapsTemplates.pas' ,
+ JclPreProcessorHashSetsTemplates in '..\..\source\common\JclPreProcessorHashSetsTemplates.pas' ,
JclPreProcessorLexer in '..\..\source\common\JclPreProcessorLexer.pas' ,
JclPreProcessorLinkedListsTemplates in '..\..\source\common\JclPreProcessorLinkedListsTemplates.pas' ,
JclPreProcessorParser in '..\..\source\common\JclPreProcessorParser.pas' ,
Modified: trunk/jcl/packages/fpc/JclDeveloperTools.lpk
===================================================================
--- trunk/jcl/packages/fpc/JclDeveloperTools.lpk 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/fpc/JclDeveloperTools.lpk 2012-02-12 20:12:16 UTC (rev 3720)
@@ -39,7 +39,7 @@
<Description Value="JEDI Code Library Developer Tools package"/>
<License Value="Copyright (C) 1999, 2011 Project JEDI"/>
<Version Major="2" Minor="4" Release="0" Build="4198"/>
- <Files Count="29">
+ <Files Count="30">
<Item1>
<Filename Value="..\..\source\common\JclCompilerUtils.pas"/>
<UnitName Value="JclCompilerUtils"/>
@@ -105,57 +105,61 @@
<UnitName Value="JclPreProcessorHashMapsTemplates"/>
</Item16>
<Item17>
+ <Filename Value="..\..\source\common\JclPreProcessorHashSetsTemplates.pas"/>
+ <UnitName Value="JclPreProcessorHashSetsTemplates"/>
+ </Item17>
+ <Item18>
<Filename Value="..\..\source\common\JclPreProcessorLexer.pas"/>
<UnitName Value="JclPreProcessorLexer"/>
- </Item17>
- <Item18>
+ </Item18>
+ <Item19>
<Filename Value="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas"/>
<UnitName Value="JclPreProcessorLinkedListsTemplates"/>
- </Item18>
- <Item19>
+ </Item19>
+ <Item20>
<Filename Value="..\..\source\common\JclPreProcessorParser.pas"/>
<UnitName Value="JclPreProcessorParser"/>
- </Item19>
- <Item20>
+ </Item20>
+ <Item21>
<Filename Value="..\..\source\common\JclPreProcessorQueuesTemplates.pas"/>
<UnitName Value="JclPreProcessorQueuesTemplates"/>
- </Item20>
- <Item21>
+ </Item21>
+ <Item22>
<Filename Value="..\..\source\common\JclPreProcessorSortedMapsTemplates.pas"/>
<UnitName Value="JclPreProcessorSortedMapsTemplates"/>
- </Item21>
- <Item22>
+ </Item22>
+ <Item23>
<Filename Value="..\..\source\common\JclPreProcessorStacksTemplates.pas"/>
<UnitName Value="JclPreProcessorStacksTemplates"/>
- </Item22>
- <Item23>
+ </Item23>
+ <Item24>
<Filename Value="..\..\source\common\JclPreProcessorTemplates.pas"/>
<UnitName Value="JclPreProcessorTemplates"/>
- </Item23>
- <Item24>
+ </Item24>
+ <Item25>
<Filename Value="..\..\source\common\JclPreProcessorTreesTemplates.pas"/>
<UnitName Value="JclPreProcessorTreesTemplates"/>
- </Item24>
- <Item25>
+ </Item25>
+ <Item26>
<Filename Value="..\..\source\common\JclPreProcessorVectorsTemplates.pas"/>
<UnitName Value="JclPreProcessorVectorsTemplates"/>
- </Item25>
- <Item26>
+ </Item26>
+ <Item27>
<Filename Value="..\..\source\common\JclUsesUtils.pas"/>
<UnitName Value="JclUsesUtils"/>
- </Item26>
- <Item27>
+ </Item27>
+ <Item28>
<Filename Value="..\..\source\windows\JclHelpUtils.pas"/>
<UnitName Value="JclHelpUtils"/>
- </Item27>
- <Item28>
+ </Item28>
+ <Item29>
<Filename Value="..\..\source\windows\JclMsBuild.pas"/>
<UnitName Value="JclMsBuild"/>
- </Item28>
- <Item29>
+ </Item29>
+ <Item30>
<Filename Value="..\..\source\windows\MSHelpServices_TLB.pas"/>
<UnitName Value="MSHelpServices_TLB"/>
- </Item29>
+ </Item30>
</Files>
<RequiredPkgs Count="3">
<Item1>
Modified: trunk/jcl/packages/fpc/JclDeveloperTools.pas
===================================================================
--- trunk/jcl/packages/fpc/JclDeveloperTools.pas 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/fpc/JclDeveloperTools.pas 2012-02-12 20:12:16 UTC (rev 3720)
@@ -3,7 +3,7 @@
DO NOT EDIT THIS FILE, IT IS GENERATED BY THE PACKAGE GENERATOR
ALWAYS EDIT THE RELATED XML FILE (JclDeveloperTools-R.xml)
- Last generated: 12-08-2011 15:08:23 UTC
+ Last generated: 12-02-2012 19:42:40 UTC
-----------------------------------------------------------------------------
}
@@ -28,6 +28,7 @@
JclPreProcessorContainerTypes,
JclPreProcessorExcDlgTemplates,
JclPreProcessorHashMapsTemplates,
+ JclPreProcessorHashSetsTemplates,
JclPreProcessorLexer,
JclPreProcessorLinkedListsTemplates,
JclPreProcessorParser,
Modified: trunk/jcl/packages/help/JclDeveloperTools.dox
===================================================================
--- trunk/jcl/packages/help/JclDeveloperTools.dox 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/help/JclDeveloperTools.dox 2012-02-12 20:12:16 UTC (rev 3720)
@@ -1,4 +1,4 @@
-; This is a Doc-O-Matic version 6.5.1.1382 project file.
+; This is a Doc-O-Matic version 6.5.1.1382 project file.
; This file is maintained by Doc-O-Matic, do not edit manually.
[*Control*]
@@ -32,7 +32,7 @@
File3=JclContainers.doxdb
[Source Files]
-Count=31
+Count=32
File0=..\..\source\common\JclCompilerUtils.pas
File1=..\..\source\common\JclDevToolsResources.pas
File2=..\..\source\common\JclIDEUtils.pas
@@ -49,21 +49,22 @@
File13=..\..\source\common\JclPreProcessorContainerTypes.pas
File14=..\..\source\common\JclPreProcessorExcDlgTemplates.pas
File15=..\..\source\common\JclPreProcessorHashMapsTemplates.pas
-File16=..\..\source\common\JclPreProcessorLexer.pas
-File17=..\..\source\common\JclPreProcessorLinkedListsTemplates.pas
-File18=..\..\source\common\JclPreProcessorParser.pas
-File19=..\..\source\common\JclPreProcessorQueuesTemplates.pas
-File20=..\..\source\common\JclPreProcessorSortedMapsTemplates.pas
-File21=..\..\source\common\JclPreProcessorStacksTemplates.pas
-File22=..\..\source\common\JclPreProcessorTemplates.pas
-File23=..\..\source\common\JclPreProcessorTreesTemplates.pas
-File24=..\..\source\common\JclPreProcessorVectorsTemplates.pas
-File25=..\..\source\common\JclUsesUtils.pas
-File26=..\..\source\windows\JclHelpUtils.pas
-File27=..\..\source\windows\JclMsBuild.pas
-File28=..\..\source\windows\MSHelpServices_TLB.pas
-File29=..\..\..\help\Common.dtx
-File30=..\..\..\help\JclDeveloperTools.dtx
+File16=..\..\source\common\JclPreProcessorHashSetsTemplates.pas
+File17=..\..\source\common\JclPreProcessorLexer.pas
+File18=..\..\source\common\JclPreProcessorLinkedListsTemplates.pas
+File19=..\..\source\common\JclPreProcessorParser.pas
+File20=..\..\source\common\JclPreProcessorQueuesTemplates.pas
+File21=..\..\source\common\JclPreProcessorSortedMapsTemplates.pas
+File22=..\..\source\common\JclPreProcessorStacksTemplates.pas
+File23=..\..\source\common\JclPreProcessorTemplates.pas
+File24=..\..\source\common\JclPreProcessorTreesTemplates.pas
+File25=..\..\source\common\JclPreProcessorVectorsTemplates.pas
+File26=..\..\source\common\JclUsesUtils.pas
+File27=..\..\source\windows\JclHelpUtils.pas
+File28=..\..\source\windows\JclMsBuild.pas
+File29=..\..\source\windows\MSHelpServices_TLB.pas
+File30=..\..\..\help\Common.dtx
+File31=..\..\..\help\JclDeveloperTools.dtx
[General]
Copyright=Copyright (C) 1999, 2011 Project JEDI
Modified: trunk/jcl/packages/xml/JclDeveloperTools-R.xml
===================================================================
--- trunk/jcl/packages/xml/JclDeveloperTools-R.xml 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/packages/xml/JclDeveloperTools-R.xml 2012-02-12 20:12:16 UTC (rev 3720)
@@ -38,6 +38,7 @@
<File Name="..\..\source\common\JclPreProcessorContainerTypes.pas" Targets="all" Formname="" Condition=""/>
<File Name="..\..\source\common\JclPreProcessorExcDlgTemplates.pas" Targets="all" Formname="" Condition=""/>
<File Name="..\..\source\common\JclPreProcessorHashMapsTemplates.pas" Targets="all" Formname="" Condition=""/>
+ <File Name="..\..\source\common\JclPreProcessorHashSetsTemplates.pas" Targets="all" Formname="" Condition=""/>
<File Name="..\..\source\common\JclPreProcessorLexer.pas" Targets="all" Formname="" Condition=""/>
<File Name="..\..\source\common\JclPreProcessorLinkedListsTemplates.pas" Targets="all" Formname="" Condition=""/>
<File Name="..\..\source\common\JclPreProcessorParser.pas" Targets="all" Formname="" Condition=""/>
Modified: trunk/jcl/source/common/JclHashSets.pas
===================================================================
--- trunk/jcl/source/common/JclHashSets.pas 2012-02-12 17:47:10 UTC (rev 3719)
+++ trunk/jcl/source/common/JclHashSets.pas 2012-02-12 20:12:16 UTC (rev 3720)
@@ -50,66 +50,37 @@
{$ELSE ~HAS_UNITSCOPE}
SysUtils, Classes,
{$ENDIF ~HAS_UNITSCOPE}
- {$IFDEF SUPPORTS_GENERICS}
JclAlgorithms,
- {$ENDIF SUPPORTS_GENERICS}
- JclBase, JclAbstractContainers, JclContainerIntf, JclHashMaps, JclSynch;
+ JclBase, JclAbstractContainers, JclContainerIntf, JclSynch;
+
type
- {$IFDEF SUPPORTS_GENERICS}
- //DOM-IGNORE-BEGIN
- TRefUnique = class;
- TRefUnique = class(TInterfacedObject, IEquatable<TRefUnique>, IJclEqualityComparer<TRefUnique>)
+ TItrStart = (isFirst, isLast);
+
+ TJclIntfHashSetBucket = class
public
- { IEquatable<TRefUnique> }
- function Equals(Other: TRefUnique): Boolean; reintroduce;
- { IJclEqualityComparer<TRefUnique> }
- function GetEqualityCompare: TEqualityCompare<TRefUnique>;
- procedure SetEqualityCompare(Value: TEqualityCompare<TRefUnique>);
- function ItemsEqual(const A, B: TRefUnique): Boolean;
- property EqualityCompare: TEqualityCompare<TRefUnique> read GetEqualityCompare write SetEqualityCompare;
+ Size: Integer;
+ Entries: TDynIInterfaceArray;
end;
- //DOM-IGNORE-END
- {$ELSE ~SUPPORTS_GENERICS}
- TRefUnique = TInterfacedObject;
- {$ENDIF ~SUPPORTS_GENERICS}
TJclIntfHashSet = class(TJclIntfAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclIntfEqualityComparer,
- IJclIntfCollection, IJclIntfSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclIntfEqualityComparer, IJclIntfHashConverter, IJclIntfCollection, IJclIntfSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
private
- FMap: IJclIntfMap;
+ FBuckets: array of TJclIntfHashSetBucket;
+ FHashToRangeFunction: TJclHashToRangeFunction;
protected
procedure AssignDataTo(Dest: TJclAbstractContainerBase); override;
+ procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- constructor Create(const AMap: IJclIntfMap); overload;
+ constructor Create(ACapacity: Integer); overload;
destructor Destroy; override;
+ property HashToRangeFunction: TJclHashToRangeFunction read FHashToRangeFunction write FHashToRangeFunction;
{ IJclPackable }
- function GetAutoPackParameter: Integer; override;
- function GetAutoPackStrategy: TJclAutoPackStrategy; override;
- function GetCapacity: Integer; override;
procedure Pack; override;
- procedure SetAutoPackParameter(Value: Integer); override;
- procedure SetAutoPackStrategy(Value: TJclAutoPackStrategy); override;
procedure SetCapacity(Value: Integer); override;
- { IJclBaseContainer }
- function GetAllowDefaultElements: Boolean; override;
- function GetDuplicates: TDuplicates; override;
- function GetReadOnly: Boolean; override;
- function GetRemoveSingleElement: Boolean; override;
- function GetReturnDefaultElements: Boolean; override;
- function GetThreadSafe: Boolean; override;
- procedure SetAllowDefaultElements(Value: Boolean); override;
- procedure SetDuplicates(Value: TDuplicates); override;
- procedure SetReadOnly(Value: Boolean); override;
- procedure SetRemoveSingleElement(Value: Boolean); override;
- procedure SetReturnDefaultElements(Value: Boolean); override;
- procedure SetThreadSafe(Value: Boolean); override;
{ IJclIntfCollection }
function Add(const AInterface: IInterface): Boolean;
function AddAll(const ACollection: IJclIntfCollection): Boolean;
@@ -135,48 +106,61 @@
procedure Union(const ACollection: IJclIntfCollection);
end;
+ TJclIntfHashSetIterator = class(TJclAbstractIterator, IJclIntfIterator)
+ protected
+ FBucketIndex: Integer;
+ FItemIndex: Integer;
+ FStart: TItrStart;
+ FOwnHashSet: TJclIntfHashSet;
+ procedure AssignPropertiesTo(Dest: TJclAbstractIterator); override;
+ function CreateEmptyIterator: TJclAbstractIterator; override;
+ public
+ constructor Create(AOwnHashSet: TJclIntfHashSet; ABucketIndex: Integer; AItemIndex: Integer; AValid: Boolean; AStart: TItrStart);
+ { IJclIntfIterator }
+ function Add(const AInterface: IInterface): Boolean;
+ procedure Extract;
+ function GetObject: IInterface;
+ function HasNext: Boolean;
+ function HasPrevious: Boolean;
+ function Insert(const AInterface: IInterface): Boolean;
+ function IteratorEquals(const AIterator: IJclIntfIterator): Boolean;
+ function Next: IInterface;
+ function NextIndex: Integer;
+ function Previous: IInterface;
+ function PreviousIndex: Integer;
+ procedure Remove;
+ procedure Reset;
+ procedure SetObject(const AInterface: IInterface);
+ {$IFDEF SUPPORTS_FOR_IN}
+ function MoveNext: Boolean;
+ property Current: IInterface read GetObject;
+ {$ENDIF SUPPORTS_FOR_IN}
+ end;
+
+ TJclAnsiStrHashSetBucket = class
+ public
+ Size: Integer;
+ Entries: TDynAnsiStringArray;
+ end;
+
TJclAnsiStrHashSet = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrEqualityComparer,
- IJclAnsiStrCollection, IJclAnsiStrSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclAnsiStrEqualityComparer, IJclAnsiStrHashConverter, IJclAnsiStrCollection, IJclAnsiStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
- { IJclStrContainer }
- function GetCaseSensitive: Boolean; override;
- procedure SetCaseSensitive(Value: Boolean); override;
- { IJclAnsiStrContainer }
- function GetEncoding: TJclAnsiStrEncoding; override;
- procedure SetEncoding(Value: TJclAnsiStrEncoding); override;
private
- FMap: IJclAnsiStrMap;
+ FBuckets: array of TJclAnsiStrHashSetBucket;
+ FHashToRangeFunction: TJclHashToRangeFunction;
protected
procedure AssignDataTo(Dest: TJclAbstractContainerBase); override;
+ procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- constructor Create(const AMap: IJclAnsiStrMap); overload;
+ constructor Create(ACapacity: Integer); overload;
destructor Destroy; override;
+ property HashToRangeFunction: TJclHashToRangeFunction read FHashToRangeFunction write FHashToRangeFunction;
{ IJclPackable }
- function GetAutoPackParameter: Integer; override;
- function GetAutoPackStrategy: TJclAutoPackStrategy; override;
- function GetCapacity: Integer; override;
procedure Pack; override;
- procedure SetAutoPackParameter(Value: Integer); override;
- procedure SetAutoPackStrategy(Value: TJclAutoPackStrategy); override;
procedure SetCapacity(Value: Integer); override;
- { IJclBaseContainer }
- function GetAllowDefaultElements: Boolean; override;
- function GetDuplicates: TDuplicates; override;
- function GetReadOnly: Boolean; override;
- function GetRemoveSingleElement: Boolean; override;
- function GetReturnDefaultElements: Boolean; override;
- function GetThreadSafe: Boolean; override;
- procedure SetAllowDefaultElements(Value: Boolean); override;
- procedure SetDuplicates(Value: TDuplicates); override;
- procedure SetReadOnly(Value: Boolean); override;
- procedure SetRemoveSingleElement(Value: Boolean); override;
- procedure SetReturnDefaultElements(Value: Boolean); override;
- procedure SetThreadSafe(Value: Boolean); override;
{ IJclAnsiStrCollection }
function Add(const AString: AnsiString): Boolean; override;
function AddAll(const ACollection: IJclAnsiStrCollection): Boolean; override;
@@ -202,48 +186,61 @@
procedure Union(const ACollection: IJclAnsiStrCollection);
end;
+ TJclAnsiStrHashSetIterator = class(TJclAbstractIterator, IJclAnsiStrIterator)
+ protected
+ FBucketIndex: Integer;
+ FItemIndex: Integer;
+ FStart: TItrStart;
+ FOwnHashSet: TJclAnsiStrHashSet;
+ procedure AssignPropertiesTo(Dest: TJclAbstractIterator); override;
+ function CreateEmptyIterator: TJclAbstractIterator; override;
+ public
+ constructor Create(AOwnHashSet: TJclAnsiStrHashSet; ABucketIndex: Integer; AItemIndex: Integer; AValid: Boolean; AStart: TItrStart);
+ { IJclAnsiStrIterator }
+ function Add(const AString: AnsiString): Boolean;
+ procedure Extract;
+ function GetString: AnsiString;
+ function HasNext: Boolean;
+ function HasPrevious: Boolean;
+ function Insert(const AString: AnsiString): Boolean;
+ function IteratorEquals(const AIterator: IJclAnsiStrIterator): Boolean;
+ function Next: AnsiString;
+ function NextIndex: Integer;
+ function Previous: AnsiString;
+ function PreviousIndex: Integer;
+ procedure Remove;
+ procedure Reset;
+ procedure SetString(const AString: AnsiString);
+ {$IFDEF SUPPORTS_FOR_IN}
+ function MoveNext: Boolean;
+ property Current: AnsiString read GetString;
+ {$ENDIF SUPPORTS_FOR_IN}
+ end;
+
+ TJclWideStrHashSetBucket = class
+ public
+ Size: Integer;
+ Entries: TDynWideStringArray;
+ end;
+
TJclWideStrHashSet = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrEqualityComparer,
- IJclWideStrCollection, IJclWideStrSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclWideStrEqualityComparer, IJclWideStrHashConverter, IJclWideStrCollection, IJclWideStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
- { IJclStrContainer }
- function GetCaseSensitive: Boolean; override;
- procedure SetCaseSensitive(Value: Boolean); override;
- { IJclWideStrContainer }
- function GetEncoding: TJclWideStrEncoding; override;
- procedure SetEncoding(Value: TJclWideStrEncoding); override;
private
- FMap: IJclWideStrMap;
+ FBuckets: array of TJclWideStrHashSetBucket;
+ FHashToRangeFunction: TJclHashToRangeFunction;
protected
procedure AssignDataTo(Dest: TJclAbstractContainerBase); override;
+ procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- constructor Create(const AMap: IJclWideStrMap); overload;
+ constructor Create(ACapacity: Integer); overload;
destructor Destroy; override;
+ property HashToRangeFunction: TJclHashToRangeFunction read FHashToRangeFunction write FHashToRangeFunction;
{ IJclPackable }
- function GetAutoPackParameter: Integer; override;
- function GetAutoPackStrategy: TJclAutoPackStrategy; override;
- function GetCapacity: Integer; override;
procedure Pack; override;
- procedure SetAutoPackParameter(Value: Integer); override;
- procedure SetAutoPackStrategy(Value: TJclAutoPackStrategy); override;
procedure SetCapacity(Value: Integer); override;
- { IJclBaseContainer }
- function GetAllowDefaultElements: Boolean; override;
- function GetDuplicates: TDuplicates; override;
- function GetReadOnly: Boolean; override;
- function GetRemoveSingleElement: Boolean; override;
- function GetReturnDefaultElements: Boolean; override;
- function GetThreadSafe: Boolean; override;
- procedure SetAllowDefaultElements(Value: Boolean); override;
- procedure SetDuplicates(Value: TDuplicates); override;
- procedure SetReadOnly(Value: Boolean); override;
- procedure SetRemoveSingleElement(Value: Boolean); override;
- procedure SetReturnDefaultElements(Value: Boolean); override;
- procedure SetThreadSafe(Value: Boolean); override;
{ IJclWideStrCollection }
function Add(const AString: WideString): Boolean; override;
function AddAll(const ACollection: IJclWideStrCollection): Boolean; override;
@@ -269,46 +266,65 @@
procedure Union(const ACollection: IJclWideStrCollection);
end;
-{$IFDEF SUPPORTS_UNICODE_STRING}
+ TJclWideStrHashSetIterator = class(TJclAbstractIterator, IJclWideStrIterator)
+ protected
+ FBucketIndex: Integer;
+ FItemIndex: Integer;
+ FStart: TItrStart;
+ FOwnHashSet: TJclWideStrHashSet;
+ procedure AssignPropertiesTo(Dest: TJclAbstractIterator); override;
+ function CreateEmptyIterator: TJclAbstractIterator; override;
+ public
+ constructor Create(AOwnHashSet: TJclWideStrHashSet; ABucketIndex: Integer; AItemIndex: Integer; AValid: Boolean; AStart: TItrStart);
+ { IJclWideStrIterator }
+ function Add(const AString: WideString): Boolean;
+ procedure Extract;
+ function GetString: WideString;
+ function HasNext: Boolean;
+ function HasPrevious: Boolean;
+ function Insert(const AString: WideString): Boolean;
+ function IteratorEquals(const AIterator: IJclWideStrIterator): Boolean;
+ function Next: WideString;
+ function NextIndex: Integer;
+ function Previous: WideString;
+ function PreviousIndex: Integer;
+ procedure Remove;
+ procedure Reset;
+ procedure SetString(const AString: WideString);
+ {$IFDEF SUPPORTS_FOR_IN}
+ function MoveNext: Boolean;
+ property Current: WideString read GetString;
+ {$ENDIF SUPPORTS_FOR_IN}
+ end;
+
+ {$IFDEF SUPPORTS_UNICODE_STRING}
+ TJclUnicodeStrHashSetBucket = class
+ public
+ Size: Integer;
+ Entries: TDynUnicodeStringArray;
+ end;
+
+ {$ENDIF SUPPORTS_UNICODE_STRING}
+
+ {$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrHashSet = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrEqualityComparer,
- IJclUnicodeStrCollection, IJclUnicodeStrSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclUnicodeStrEqualityComparer, IJclUnicodeStrHashConverter, IJclUnicodeStrCollection, IJclUnicodeStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
- { IJclStrContainer }
- function GetCaseSensitive: Boolean; override;
- procedure SetCaseSensitive(Value: Boolean); override;
private
- FMap: IJclUnicodeStrMap;
+ FBuckets: array of TJclUnicodeStrHashSetBucket;
+ FHashToRangeFunction: TJclHashToRangeFunction;
protected
procedure AssignDataTo(Dest: TJclAbstractContainerBase); override;
+ procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- constructor Create(const AMap: IJclUnicodeStrMap); overload;
+ constructor Create(ACapacity: Integer); overload;
destructor Destroy; override;
+ property HashToRangeFunction: TJclHashToRangeFunction read FHashToRangeFunction write FHashToRangeFunction;
{ IJclPackable }
- function GetAutoPackParameter: Integer; override;
- function GetAutoPackStrategy: TJclAutoPackStrategy; override;
- function GetCapacity: Integer; override;
procedure Pack; override;
- procedure SetAutoPackParameter(Value: Integer); override;
- procedure SetAutoPackStrategy(Value: TJclAutoPackStrategy); override;
procedure SetCapacity(Value: Integer); override;
- { IJclBaseContainer }
- function GetAllowDefaultElements: Boolean; override;
- function GetDuplicates: TDuplicates; override;
- function GetReadOnly: Boolean; override;
- function GetRemoveSingleElement: Boolean; override;
- function GetReturnDefaultElements: Boolean; override;
- function GetThreadSafe: Boolean; override;
- procedure SetAllowDefaultElements(Value: Boolean); override;
- procedure SetDuplicates(Value: TDuplicates); override;
- procedure SetReadOnly(Value: Boolean); override;
- procedure SetRemoveSingleElement(Value: Boolean); override;
- procedure SetReturnDefaultElements(Value: Boolean); override;
- procedure SetThreadSafe(Value: Boolean); override;
{ IJclUnicodeStrCollection }
function Add(const AString: UnicodeString): Boolean; override;
function AddAll(const ACollection: IJclUnicodeStrCollection): Boolean; override;
@@ -333,9 +349,52 @@
procedure Subtract(const ACollection: IJclUnicodeStrCollection);
procedure Union(const ACollection: IJclUnicodeStrCollection);
end;
-{$ENDIF SUPPORTS_UNICODE_STRING}
+ {$ENDIF SUPPORTS_UNICODE_STRING}
+ {$IFDEF SUPPORTS_UNICODE_STRING}
+ TJclUnicodeStrHashSetIterator = class(TJclAbstractIterator, IJclUnicodeStrIterator)
+ protected
+ FBucketIndex: Integer;
+ FItemIndex: Integer;
+ FStart: TItrStart;
+ FOwnHashSet: TJclUnicodeStrHashSet;
+ procedure AssignPropertiesTo(Dest: TJclAbstractIterator); override;
+ function CreateEmptyIterator: TJclAbstractIterator; override;
+ public
+ constructor Create(AOwnHashSet: TJclUnicodeStrHashSet; ABucketIndex: Integer; AItemIndex: Integer; AValid: Boolean; AStart: TItrStart);
+ { IJclUnicodeStrIterator }
+ function Add(const AString: UnicodeString): Boolean;
+ procedure Extract;
+ function GetString: UnicodeString;
+ function HasNext: Boolean;
+ function HasPrevious: Boolean;
+ function Insert(const AString: UnicodeString): Boolean;
+ function IteratorEquals(const AIterator: IJclUnicodeStrIterator): Boolean;
+ function Next: UnicodeString;
+ function NextIndex: Integer;
+ function Previous: UnicodeString;
+ function PreviousIndex: Integer;
+ procedure Remove;
+ procedure Reset;
+ procedure SetString(const AString: UnicodeString);
+ {$IFDEF SUPPORTS_FOR_IN}
+ function MoveNext: Boolean;
+ property Current: UnicodeString read GetString;
+ {$ENDIF SUPPORTS_FOR_IN}
+ end;
+ {$ENDIF SUPPORTS_UNICODE_STRING}
+
{$IFDEF CONTAINER_ANSISTR}
+ TJclStrHashSetBucket = TJclAnsiStrHashSetBucket;
+ {$ENDIF CONTAINER_ANSISTR}
+ {$IFDEF CONTAINER_WIDESTR}
+ TJclStrHashSetBucket = TJclWideStrHashSetBucket;
+ {$ENDIF CONTAINER_WIDESTR}
+ {$IFDEF CONTAINER_UNICODESTR}
+ TJclStrHashSetBucket = TJclUnicodeStrHashSetBucket;
+ {$ENDIF CONTAINER_UNICODESTR}
+
+ {$IFDEF CONTAINER_ANSISTR}
TJclStrHashSet = TJclAnsiStrHashSet;
{$ENDIF CONTAINER_ANSISTR}
{$IFDEF CONTAINER_WIDESTR}
@@ -345,45 +404,40 @@
TJclStrHashSet = TJclUnicodeStrHashSet;
{$ENDIF CONTAINER_UNICODESTR}
+ {$IFDEF CONTAINER_ANSISTR}
+ TJclStrHashSetIterator = TJclAnsiStrHashSetIterator;
+ {$ENDIF CONTAINER_ANSISTR}
+ {$IFDEF CONTAINER_WIDESTR}
+ TJclStrHashSetIterator = TJclWideStrHashSetIterator;
+ {$ENDIF CONTAINER_WIDESTR}
+ {$IFDEF CONTAINER_UNICODESTR}
+ TJclStrHashSetIterator = TJclUnicodeStrHashSetIterator;
+ {$ENDIF CONTAINER_UNICODESTR}
+
+ TJclSingleHashSetBucket = class
+ public
+ Size: Integer;
+ Entries: TDynSingleArray;
+ end;
+
TJclSingleHashSet = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer,
- IJclSingleCollection, IJclSingleSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclSingleEqualityComparer, IJclSingleHashConverter, IJclSingleCollection, IJclSingleSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
- { IJclSingleContainer }
- function GetPrecision: Single; override;
- procedure SetPrecision(const Value: Single); override;
private
- FMap: IJclSingleMap;
+ FBuckets: array of TJclSingleHashSetBucket;
+ FHashToRangeFunction: TJclHashToRangeFunction;
protected
procedure AssignDataTo(Dest: TJclAbstractContainerBase); override;
+ procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- constructor Create(const AMap: IJclSingleMap); overload;
+ constructor Create(ACapacity: Integer); overload;
destructor Destroy; override;
+ property HashToRangeFunction: TJclHashToRangeFunction read FHashToRangeFunction write FHashToRangeFunction;
{ IJclPackable }
- function GetAutoPackParameter: Integer; override;
- function GetAutoPackStrategy: TJclAutoPackStrategy; override;
- function GetCapacity: Integer; override;
procedure Pack; override;
- procedure SetAutoPackParameter(Value: Integer); override;
- procedure SetAutoPackStrategy(Value: TJclAutoPackStrategy); override;
procedure SetCapacity(Value: Integer); override;
- { IJclBaseContainer }
- function GetAllowDefaultElements: Boolean; override;
- function GetDuplicates: TDuplicates; override;
- function GetReadOnly: Boolean; override;
- function GetRemoveSingleElement: Boolean; override;
- function GetReturnDefaultElements: Boolean; override;
- function GetThreadSafe: Boolean; override;
- procedure SetAllowDefaultElements(Value: Boolean); override;
- procedure SetDuplicates(Value: TDuplicates); override;
- procedure SetReadOnly(Value: Boolean); override;
- procedure SetRemoveSingleElement(Value: Boolean); override;
- procedure SetReturnDefaultElements(Value: Boolean); override;
- procedure SetThreadSafe(Value: Boolean); override;
{ IJclSingleCollection }
function Add(const AValue: Single): Boolean;
function AddAll(const ACollection: IJclSingleCollection): Boolean;
@@ -409,45 +463,61 @@
procedure Union(const ACollection: IJclSingleCollection);
end;
+ TJclSingleHashSetIterator = class(TJclAbstractIterator, IJclSingleIterator)
+ protected
+ FBucketIndex: Integer;
+ FItemIndex: Integer;
+ FStart: TItrStart;
+ FOwnHashSet: TJclSingleHashSet;
+ procedure AssignPropertiesTo(Dest: TJclAbstractIterator); override;
+ function CreateEmptyIterator: TJclAbstractIterator; override;
+ public
+ constructor Create(AOwnHashSet: TJclSingleHashSet; ABucketIndex: Integer; AItemIndex: Integer; AValid: Boolean; AStart: TItrStart);
+ { IJclSingleIterator }
+ function Add(const AValue: Single): Boolean;
+ procedure Extract;
+ function GetValue: Single;
+ function HasNext: Boolean;
+ function HasPrevious: Boolean;
+ function Insert(const AValue: Single): Boolean;
+ function IteratorEquals(const AIterator: IJclSingleIterator): Boolean;
+ function Next: Single;
+ function NextIndex: Integer;
+ function Previous: Single;
+ function PreviousIndex: Integer;
+ procedure Remove;
+ procedure Reset;
+ procedure SetValue(const AValue: Single);
+ {$IFDEF SUPPORTS_FOR_IN}
+ function MoveNext: Boolean;
+ property Current: Single read GetValue;
+ {$ENDIF SUPPORTS_FOR_IN}
+ end;
+
+ TJclDoubleHashSetBucket = class
+ public
+ Size: Integer;
+ Entries: TDynDoubleArray;
+ end;
+
TJclDoubleHashSet = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer,
- IJclDoubleCollection, IJclDoubleSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclDoubleEqualityComparer, IJclDoubleHashConverter, IJclDoubleCollection, IJclDoubleSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
- { IJclDoubleContainer }
- function GetPrecision: Double; override;
- procedure SetPrecision(const Value: Double); override;
private
- FMap: IJclDoubleMap;
+ FBuckets: array of TJclDoubleHashSetBucket;
+ FHashToRangeFunction: TJclHashToRangeFunction;
protected
procedure AssignDataTo(Dest: TJclAbstractContainerBase); override;
+ procedure AssignPropertiesTo(Dest: TJclAbstractContainerBase); override;
public
- constructor Create(const AMap: IJclDoubleMap); overload;
+ constructor Create(ACapacity: Integer); overload;
destructor Destroy; override;
+ property HashToRangeFunction: TJclHashToRangeFunction read FHashToRangeFunction write FHashToRangeFunction;
{ IJclPackable }
- function GetAutoPackParameter: Integer; override;
- function GetAutoPackStrategy: TJclAutoPackStrategy; override;
- function GetCapacity: Integer; override;
procedure Pack; override;
- procedure SetAutoPackParameter(Value: Integer); override;
- procedure SetAutoPackStrategy(Value: TJclAutoPackStrategy); override;
procedure SetCapacity(Value: Integer); override;
- { IJclBaseContainer }
- function GetAllowDefaultElements: Boolean; override;
- function GetDuplicates: TDuplicates; override;
- function GetReadOnly: Boolean; override;
- function GetRemoveSingleElement: Boolean; override;
- function GetReturnDefaultElements: Boolean; override;
- function GetThreadSafe: Boolean; override;
- procedure SetAllowDefaultElements(Value: Boolean); override;
- procedure SetDuplicates(Value: TDuplicates); override;
- procedure SetReadOnly(Value: Boolean); override;
- procedure SetRemoveSingleElement(Value: Boolean); override;
- procedure SetReturnDefaultElements(Value: Boolean); override;
- procedure SetThreadSafe(Value: Boolean); override;
{ IJclDoubleCollection }
function Add(const AValue: Double): Boolean;
function AddAll(const ACollection: IJclDoubleCollection): Boolean;
@@ -473,45 +543,61 @@
procedure Union(const ACollection: IJclDoubleCollection);
end;
+ TJclDoubleHashSetIterator = class(TJclAbstractIterator, IJclDoubleIterator)
+ protected
+ FBucketIndex: Integer;
+ FItemIndex: Integer;
+ FStart: TItrStart;
+ FOwnHashSet: TJclDoubleHashSet;
+ procedure AssignPropertiesTo(Dest: TJclAbstractIterator); override;
+ function CreateEmptyIterator: TJclAbstractIterator; override;
+ public
+ constructor Create(AOwnHashSet: TJclDoubleHashSet; ABucketIndex: Integer; AItemIndex: Integer; AValid: Boolean; AStart: TItrStart);
+ { IJclDoubleIterator }
+ function Add(const AValue: Double): Boolean;
+ procedure Extract;
+ function GetValue: Double;
+ function HasNext: Boolean;
+ function HasPrevious: Boolean;
+ function Insert(const AValue: Double): Boolean;
+ function IteratorEquals(const AIterator: IJclDoubleIterator): Boolean;
+ function Next: Double;
+ function NextIndex: Integer;
+ function Previous: Double;
+ function PreviousIndex: Integer;
+ procedure Remove;
+ procedure Reset;
+ procedure SetValue(const AValue: Double);
+ {$IFDEF SUPPORTS_FOR_IN}
+ function MoveNext: Boolean;
+ property Current: Double read GetValue;
+ {$ENDIF SUPPORTS_FOR_IN}
+ end;
+
+ TJclExtendedHashSetBucket = class
+ public
+ Size: Integer;
+ Entries: TDynExtendedArray;
+ end;
+
TJclExtendedHashSet = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer,
- IJclExtendedCollection, IJclExtendedSet)
-
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,
+ IJclExtendedEqualityComparer, IJclExtendedHashConverter, IJclExtendedCollection, IJclExtendedSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
- public
- constructor Create(ACapacity: Integer); overload;
- { IJclExtendedContainer }
- function GetPrecision: Extended; override;
- procedure SetPrecision(const Value: Extended); override;
priva...
[truncated message content] |
|
From: <jfu...@us...> - 2012-02-12 17:47:17
|
Revision: 3719
http://jcl.svn.sourceforge.net/jcl/?rev=3719&view=rev
Author: jfudickar
Date: 2012-02-12 17:47:10 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
Reverting some of the last changes and reintroducing the THashStringList for the Elems Properties
Modified Paths:
--------------
trunk/jcl/source/common/JclSimpleXml.pas
Modified: trunk/jcl/source/common/JclSimpleXml.pas
===================================================================
--- trunk/jcl/source/common/JclSimpleXml.pas 2012-02-12 14:47:39 UTC (rev 3718)
+++ trunk/jcl/source/common/JclSimpleXml.pas 2012-02-12 17:47:10 UTC (rev 3719)
@@ -51,12 +51,14 @@
{$ENDIF MSWINDOWS}
System.SysUtils, System.Classes,
System.Variants,
+ System.IniFiles,
{$ELSE ~HAS_UNITSCOPE}
{$IFDEF MSWINDOWS}
Windows, // Delphi 2005 inline
{$ENDIF MSWINDOWS}
SysUtils, Classes,
Variants,
+ IniFiles,
{$ENDIF ~HAS_UNITSCOPE}
JclBase, JclStreams;
@@ -220,7 +222,7 @@
TJclSimpleXMLElemsProlog = class(TObject)
private
- FElems: TStringList;
+ FElems: THashedStringList;
FSimpleXml: TJclSimpleXml;
function GetCount: Integer;
function GetItem(const Index: Integer): TJclSimpleXMLElem;
@@ -326,9 +328,9 @@
function GetItemNamed(const Name: string): TJclSimpleXMLElem;
function GetNamedElems(const Name: string): TJclSimpleXMLNamedElems;
protected
- FElems: TStringList;
+ FElems: THashedStringList;
FCompare: TJclSimpleXMLElemCompare;
- FNamedElems: TStringList;
+ FNamedElems: THashedStringList;
function GetItem(const Index: Integer): TJclSimpleXMLElem;
procedure AddChild(const Value: TJclSimpleXMLElem);
procedure AddChildFirst(const Value: TJclSimpleXMLElem);
@@ -2055,7 +2057,7 @@
procedure TJclSimpleXMLElems.CreateElems;
begin
if FElems = nil then
- FElems := TStringList.Create;
+ FElems := THashedStringList.Create;
end;
procedure TJclSimpleXMLElems.Delete(const Index: Integer);
@@ -2176,7 +2178,7 @@
NamedIndex: Integer;
begin
if FNamedElems = nil then
- FNamedElems := TStringList.Create;
+ FNamedElems := THashedStringList.Create;
NamedIndex := FNamedElems.IndexOf(Name);
if NamedIndex = -1 then
begin
@@ -3675,7 +3677,7 @@
constructor TJclSimpleXMLElemsProlog.Create;
begin
inherited Create;
- FElems := TStringList.Create;
+ FElems := THashedStringList.Create;
end;
destructor TJclSimpleXMLElemsProlog.Destroy;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ou...@us...> - 2012-02-12 14:47:48
|
Revision: 3718
http://jcl.svn.sourceforge.net/jcl/?rev=3718&view=rev
Author: outchy
Date: 2012-02-12 14:47:39 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
Cleanup of container prototypes.
Modified Paths:
--------------
trunk/jcl/source/common/JclArrayLists.pas
trunk/jcl/source/common/JclArraySets.pas
trunk/jcl/source/common/JclBinaryTrees.pas
trunk/jcl/source/common/JclLinkedLists.pas
trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas
trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas
trunk/jcl/source/common/JclPreProcessorLinkedListsTemplates.pas
trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas
trunk/jcl/source/common/JclPreProcessorStacksTemplates.pas
trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas
trunk/jcl/source/common/JclQueues.pas
trunk/jcl/source/common/JclStacks.pas
trunk/jcl/source/common/JclVectors.pas
trunk/jcl/source/prototypes/JclArrayLists.pas
trunk/jcl/source/prototypes/JclArraySets.pas
trunk/jcl/source/prototypes/JclBinaryTrees.pas
trunk/jcl/source/prototypes/JclLinkedLists.pas
trunk/jcl/source/prototypes/JclQueues.pas
trunk/jcl/source/prototypes/JclStacks.pas
trunk/jcl/source/prototypes/JclVectors.pas
trunk/jcl/source/prototypes/containers/JclArrayLists.int
trunk/jcl/source/prototypes/containers/JclArraySets.int
trunk/jcl/source/prototypes/containers/JclBinaryTrees.int
trunk/jcl/source/prototypes/containers/JclLinkedLists.int
trunk/jcl/source/prototypes/containers/JclQueues.int
trunk/jcl/source/prototypes/containers/JclStacks.int
trunk/jcl/source/prototypes/containers/JclVectors.int
Modified: trunk/jcl/source/common/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/common/JclArrayLists.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclArrayLists.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -139,7 +139,7 @@
end;
TJclAnsiStrArrayList = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
IJclAnsiStrCollection, IJclAnsiStrList, IJclAnsiStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -220,7 +220,7 @@
end;
TJclWideStrArrayList = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
IJclWideStrCollection, IJclWideStrList, IJclWideStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -302,7 +302,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrArrayList = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
IJclUnicodeStrCollection, IJclUnicodeStrList, IJclUnicodeStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -406,7 +406,7 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleArrayList = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer,
IJclSingleCollection, IJclSingleList, IJclSingleArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -487,7 +487,7 @@
end;
TJclDoubleArrayList = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer,
IJclDoubleCollection, IJclDoubleList, IJclDoubleArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -568,7 +568,7 @@
end;
TJclExtendedArrayList = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer,
IJclExtendedCollection, IJclExtendedList, IJclExtendedArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -993,7 +993,7 @@
end;
TJclArrayList = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclObjectOwner,
IJclCollection, IJclList, IJclArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1080,7 +1080,7 @@
TJclArrayIterator<T> = class;
TJclArrayList<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
Modified: trunk/jcl/source/common/JclArraySets.pas
===================================================================
--- trunk/jcl/source/common/JclArraySets.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclArraySets.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -77,7 +77,7 @@
end;
TJclAnsiStrArraySet = class(TJclAnsiStrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
IJclAnsiStrCollection, IJclAnsiStrList, IJclAnsiStrArray, IJclAnsiStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -97,7 +97,7 @@
end;
TJclWideStrArraySet = class(TJclWideStrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrEqualityComparer, IJclWideStrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclWideStrComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
IJclWideStrCollection, IJclWideStrList, IJclWideStrArray, IJclWideStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -118,7 +118,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrArraySet = class(TJclUnicodeStrArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
IJclUnicodeStrCollection, IJclUnicodeStrList, IJclUnicodeStrArray, IJclUnicodeStrSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -149,7 +149,7 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleArraySet = class(TJclSingleArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer, IJclSingleComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleComparer, IJclSingleContainer,
IJclSingleCollection, IJclSingleList, IJclSingleArray, IJclSingleSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -169,7 +169,7 @@
end;
TJclDoubleArraySet = class(TJclDoubleArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer, IJclDoubleComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleComparer, IJclDoubleContainer,
IJclDoubleCollection, IJclDoubleList, IJclDoubleArray, IJclDoubleSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -189,7 +189,7 @@
end;
TJclExtendedArraySet = class(TJclExtendedArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer, IJclExtendedComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedComparer, IJclExtendedContainer,
IJclExtendedCollection, IJclExtendedList, IJclExtendedArray, IJclExtendedSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -299,7 +299,7 @@
end;
TJclArraySet = class(TJclArrayList, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer, IJclComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclComparer, IJclObjectOwner,
IJclCollection, IJclList, IJclArray, IJclSet)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -323,7 +323,7 @@
//DOM-IGNORE-BEGIN
TJclArraySet<T> = class(TJclArrayList<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer<T>, IJclComparer<T>,IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>, IJclSet<T>)
private
function BinarySearch(const AItem: T): Integer;
Modified: trunk/jcl/source/common/JclBinaryTrees.pas
===================================================================
--- trunk/jcl/source/common/JclBinaryTrees.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclBinaryTrees.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -196,7 +196,7 @@
end;
TJclAnsiStrBinaryTree = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclAnsiStrComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
IJclAnsiStrCollection, IJclAnsiStrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -328,7 +328,7 @@
end;
TJclWideStrBinaryTree = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrEqualityComparer, IJclWideStrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclWideStrComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
IJclWideStrCollection, IJclWideStrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -463,7 +463,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrBinaryTree = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclUnicodeStrComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
IJclUnicodeStrCollection, IJclUnicodeStrTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -637,7 +637,7 @@
end;
TJclSingleBinaryTree = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer, IJclSingleComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleComparer, IJclSingleContainer,
IJclSingleCollection, IJclSingleTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -769,7 +769,7 @@
end;
TJclDoubleBinaryTree = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer, IJclDoubleComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleComparer, IJclDoubleContainer,
IJclDoubleCollection, IJclDoubleTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -901,7 +901,7 @@
end;
TJclExtendedBinaryTree = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer, IJclExtendedComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedComparer, IJclExtendedContainer,
IJclExtendedCollection, IJclExtendedTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1600,7 +1600,7 @@
end;
TJclBinaryTree = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer, IJclComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclEqualityComparer, IJclComparer, IJclObjectOwner,
IJclCollection, IJclTree)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1741,7 +1741,7 @@
TJclPostOrderBinaryTreeIterator<T> = class;
TJclBinaryTree<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>, IJclComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, IJclEqualityComparer<T>, IJclComparer<T>,IJclItemOwner<T>,
IJclCollection<T>, IJclTree<T>)
protected
Modified: trunk/jcl/source/common/JclLinkedLists.pas
===================================================================
--- trunk/jcl/source/common/JclLinkedLists.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclLinkedLists.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -151,7 +151,7 @@
end;
TJclAnsiStrLinkedList = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
IJclAnsiStrCollection, IJclAnsiStrList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -235,7 +235,7 @@
end;
TJclWideStrLinkedList = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
IJclWideStrCollection, IJclWideStrList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -322,7 +322,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrLinkedList = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
IJclUnicodeStrCollection, IJclUnicodeStrList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -439,7 +439,7 @@
end;
TJclSingleLinkedList = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer,
IJclSingleCollection, IJclSingleList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -523,7 +523,7 @@
end;
TJclDoubleLinkedList = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer,
IJclDoubleCollection, IJclDoubleList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -607,7 +607,7 @@
end;
TJclExtendedLinkedList = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer,
IJclExtendedCollection, IJclExtendedList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1057,7 +1057,7 @@
end;
TJclLinkedList = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclEqualityComparer, IJclObjectOwner,
IJclCollection, IJclList)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1147,7 +1147,7 @@
TJclLinkedListIterator<T> = class;
TJclLinkedList<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, IJclEqualityComparer<T>,IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>)
protected
Modified: trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorArrayListsTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -42,13 +42,12 @@
type
(* JCLARRAYLISTINT(SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME,
- ARRAYINTERFACENAME, ITRINTERFACENAME, DYNARRAYTYPE, INTERFACEADDITIONAL,
- SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION, CONSTKEYWORD,
- PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME) *)
+ ARRAYINTERFACENAME, ITRINTERFACENAME, DYNARRAYTYPE, EQUALITYCOMPARERINTERFACENAME,
+ INTERFACEADDITIONAL, SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION,
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME) *)
TJclArrayListIntParams = class(TJclCollectionInterfaceParams)
protected
// function CodeUnit: string; override;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
@@ -169,13 +168,6 @@
Result := [taArrayListClassName];
end;
-function TJclArrayListIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if Result = '' then
- Result := Format('%s %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName]);
-end;
-
//=== { TJclArrayListItrIntParams } ==========================================
function TJclArrayListItrIntParams.AliasAttributeIDs: TAllTypeAttributeIDs;
Modified: trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorArraySetsTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -42,12 +42,12 @@
type
(* JCLARRAYSETINT(SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME,
- ARRAYINTERFACENAME, SETINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL,
+ ARRAYINTERFACENAME, SETINTERFACENAME, EQUALITYCOMPARERINTERFACENAME,
+ COMPARERINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL,
COLLECTIONFLAGS, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclArraySetIntParams = class(TJclCollectionInterfaceParams)
protected
// function CodeUnit: string; override;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
@@ -122,13 +122,6 @@
Result := [taArraySetClassName];
end;
-function TJclArraySetIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if Result = '' then
- Result := Format('%s %s, %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName, ComparerInterfaceName]);
-end;
-
//=== { TJclArraySetImpParams } ==============================================
function TJclArraySetImpParams.GetConstructorParameters: string;
Modified: trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorBinaryTreesTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -51,7 +51,8 @@
end;
(* JCLBINARYTREEINT(NODETYPENAME, SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME,
- TREEINTERFACENAME, STDITRINTERFACENAME, TREEITRINTERFACENAME, INTERFACEADDITIONAL,
+ TREEINTERFACENAME, STDITRINTERFACENAME, TREEITRINTERFACENAME,
+ EQUALITYCOMPARERINTERFACENAME, COMPARERINTERFACENAME, INTERFACEADDITIONAL,
SECTIONADDITIONAL, CONSTRUCTORPARAMETERS, COLLECTIONFLAGS, CONSTKEYWORD,
PARAMETERNAME, TYPENAME) *)
TJclBinaryTreeIntParams = class(TJclCollectionInterfaceParams)
@@ -60,7 +61,6 @@
protected
// function CodeUnit: string; override;
function GetConstructorDeclarations: string;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
procedure ResetDefault(Value: Boolean); override;
@@ -228,13 +228,6 @@
Result := 'ACompare: ' + CompareFunctionName;
end;
-function TJclBinaryTreeIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if (Result = '') and TypeInfo.KnownType then
- Result := Format('%s %s, %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName, ComparerInterfaceName]);
-end;
-
procedure TJclBinaryTreeIntParams.ResetDefault(Value: Boolean);
begin
inherited ResetDefault(Value);
Modified: trunk/jcl/source/common/JclPreProcessorLinkedListsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorLinkedListsTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorLinkedListsTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -51,13 +51,13 @@
end;
(* JCLLINKEDLISTINT(ITEMCLASSNAME, SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME,
- LISTINTERFACENAME, ITRINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL,
+ LISTINTERFACENAME, ITRINTERFACENAME, EQUALITYCOMPARERINTERFACENAME,
+ INTERFACEADDITIONAL, SECTIONADDITIONAL,
COLLECTIONFLAGS, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME,
TYPENAME, GETTERNAME, SETTERNAME) *)
TJclLinkedListIntParams = class(TJclCollectionInterfaceParams)
protected
// function CodeUnit: string; override;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
@@ -201,13 +201,6 @@
Result := [taLinkedListClassName];
end;
-function TJclLinkedListIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if Result = '' then
- Result := Format('%s %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName]);
-end;
-
//=== { TJclLinkedListItrIntParams } =========================================
function TJclLinkedListItrIntParams.AliasAttributeIDs: TAllTypeAttributeIDs;
Modified: trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorQueuesTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -42,12 +42,11 @@
type
(* JCLQUEUEINT(SELFCLASSNAME, QUEUEINTERFACENAME, ANCESTORCLASSNAME, DYNARRAYTYPENAME,
- INTERFACEADDITIONAL, SECTIONADDITIONAL, OWNERSHIPDECLARATION,
- CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ EQUALITYCOMPARERINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL,
+ OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclQueueIntParams = class(TJclClassInterfaceParams)
protected
// function CodeUnit: string; override;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
@@ -119,13 +118,6 @@
Result := [taQueueClassName];
end;
-function TJclQueueIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if Result = '' then
- Result := Format('%s %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName]);
-end;
-
//=== { TJclQueueImpParams } =================================================
function TJclQueueImpParams.GetConstructorParameters: string;
Modified: trunk/jcl/source/common/JclPreProcessorStacksTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorStacksTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorStacksTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -42,12 +42,11 @@
type
(* JCLSTACKINT(SELFCLASSNAME, STACKINTERFACENAME, ANCESTORCLASSNAME, DYNARRAYTYPENAME,
- INTERFACEADDITIONAL, SECTIONADDITIONAL, OWNERSHIPDECLARATION,
- CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
+ EQUALITYCOMPARERINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL,
+ OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME) *)
TJclStackIntParams = class(TJclClassInterfaceParams)
protected
// function CodeUnit: string; override;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
@@ -119,13 +118,6 @@
Result := [taStackClassName];
end;
-function TJclStackIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if Result = '' then
- Result := Format('%s %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName]);
-end;
-
//=== { TJclStackImpParams } =================================================
function TJclStackImpParams.GetConstructorParameters: string;
Modified: trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas
===================================================================
--- trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclPreProcessorVectorsTemplates.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -42,13 +42,12 @@
type
(* JCLVECTORINT(SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME,
- ARRAYINTERFACENAME, ITRINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL,
- COLLECTIONFLAGS, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME,
- DYNARRAYTYPE, GETTERNAME, SETTERNAME) *)
+ ARRAYINTERFACENAME, ITRINTERFACENAME, EQUALITYCOMPARERINTERFACENAME,
+ INTERFACEADDITIONAL, SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION,
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, DYNARRAYTYPE, GETTERNAME, SETTERNAME) *)
TJclVectorIntParams = class(TJclCollectionInterfaceParams)
protected
// function CodeUnit: string; override;
- function GetInterfaceAdditional: string; override;
public
function AliasAttributeIDs: TAllTypeAttributeIDs; override;
published
@@ -169,13 +168,6 @@
Result := [taVectorClassName];
end;
-function TJclVectorIntParams.GetInterfaceAdditional: string;
-begin
- Result := FInterfaceAdditional;
- if Result = '' then
- Result := Format('%s %s,', [inherited GetInterfaceAdditional, EqualityComparerInterfaceName]);
-end;
-
//=== { TJclVectorItrIntParams } =============================================
function TJclVectorItrIntParams.AliasAttributeIDs: TAllTypeAttributeIDs;
Modified: trunk/jcl/source/common/JclQueues.pas
===================================================================
--- trunk/jcl/source/common/JclQueues.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclQueues.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -78,7 +78,7 @@
end;
TJclAnsiStrQueue = class(TJclAnsiStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclStrContainer, IJclAnsiStrContainer,
IJclAnsiStrQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -105,7 +105,7 @@
end;
TJclWideStrQueue = class(TJclWideStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclStrContainer, IJclWideStrContainer,
IJclWideStrQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -133,7 +133,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrQueue = class(TJclUnicodeStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclStrContainer, IJclUnicodeStrContainer,
IJclUnicodeStrQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -171,7 +171,7 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleQueue = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer,
IJclSingleQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -198,7 +198,7 @@
end;
TJclDoubleQueue = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer,
IJclDoubleQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -225,7 +225,7 @@
end;
TJclExtendedQueue = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer,
IJclExtendedQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -370,7 +370,7 @@
end;
TJclQueue = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclObjectOwner,
IJclQueue)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclStacks.pas
===================================================================
--- trunk/jcl/source/common/JclStacks.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclStacks.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -84,7 +84,7 @@
end;
TJclAnsiStrStack = class(TJclAnsiStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclStrContainer, IJclAnsiStrContainer,
IJclAnsiStrStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -108,7 +108,7 @@
end;
TJclWideStrStack = class(TJclWideStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclStrContainer, IJclWideStrContainer,
IJclWideStrStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -133,7 +133,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrStack = class(TJclUnicodeStrAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclStrContainer, IJclUnicodeStrContainer,
IJclUnicodeStrStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -168,7 +168,7 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleStack = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer,
IJclSingleStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -192,7 +192,7 @@
end;
TJclDoubleStack = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer,
IJclDoubleStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -216,7 +216,7 @@
end;
TJclExtendedStack = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer,
IJclExtendedStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -346,7 +346,7 @@
end;
TJclStack = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclObjectOwner,
IJclStack)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
Modified: trunk/jcl/source/common/JclVectors.pas
===================================================================
--- trunk/jcl/source/common/JclVectors.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/common/JclVectors.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -141,7 +141,7 @@
end;
TJclAnsiStrVector = class(TJclAnsiStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer, IJclAnsiStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclAnsiStrEqualityComparer, IJclStrContainer, IJclAnsiStrContainer, IJclAnsiStrFlatContainer,
IJclAnsiStrCollection, IJclAnsiStrList, IJclAnsiStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -223,7 +223,7 @@
end;
TJclWideStrVector = class(TJclWideStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer, IJclWideStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclWideStrEqualityComparer, IJclStrContainer, IJclWideStrContainer, IJclWideStrFlatContainer,
IJclWideStrCollection, IJclWideStrList, IJclWideStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -306,7 +306,7 @@
{$IFDEF SUPPORTS_UNICODE_STRING}
TJclUnicodeStrVector = class(TJclUnicodeStrAbstractCollection, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer, IJclUnicodeStrEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclUnicodeStrEqualityComparer, IJclStrContainer, IJclUnicodeStrContainer, IJclUnicodeStrFlatContainer,
IJclUnicodeStrCollection, IJclUnicodeStrList, IJclUnicodeStrArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -411,7 +411,7 @@
{$ENDIF CONTAINER_UNICODESTR}
TJclSingleVector = class(TJclSingleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleContainer, IJclSingleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclSingleEqualityComparer, IJclSingleContainer,
IJclSingleCollection, IJclSingleList, IJclSingleArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -493,7 +493,7 @@
end;
TJclDoubleVector = class(TJclDoubleAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleContainer, IJclDoubleEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclDoubleEqualityComparer, IJclDoubleContainer,
IJclDoubleCollection, IJclDoubleList, IJclDoubleArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -575,7 +575,7 @@
end;
TJclExtendedVector = class(TJclExtendedAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedContainer, IJclExtendedEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclExtendedEqualityComparer, IJclExtendedContainer,
IJclExtendedCollection, IJclExtendedList, IJclExtendedArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1005,7 +1005,7 @@
end;
TJclVector = class(TJclAbstractContainer, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclObjectOwner, IJclEqualityComparer,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer, IJclObjectOwner,
IJclCollection, IJclList, IJclArray)
protected
function CreateEmptyContainer: TJclAbstractContainerBase; override;
@@ -1093,7 +1093,7 @@
TJclVectorIterator<T> = class;
TJclVector<T> = class(TJclAbstractContainer<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclItemOwner<T>, IJclEqualityComparer<T>,
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, IJclEqualityComparer<T>, IJclItemOwner<T>,
IJclCollection<T>, IJclList<T>, IJclArray<T>)
protected
Modified: trunk/jcl/source/prototypes/JclArrayLists.pas
===================================================================
--- trunk/jcl/source/prototypes/JclArrayLists.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclArrayLists.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -55,7 +55,7 @@
TItrStart = (isFirst, isLast);
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
- {$JPPEXPANDMACRO JCLARRAYLISTINT(,,,,,,,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLARRAYLISTINT(,,,,,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLARRAYLISTITRINT(,,,,,,,)}
@@ -65,7 +65,7 @@
TJclArrayIterator<T> = class;
- {$JPPEXPANDMACRO JCLARRAYLISTINT(TJclArrayList<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,TDynArray, IJclItemOwner<T>\, IJclEqualityComparer<T>\,,
+ {$JPPEXPANDMACRO JCLARRAYLISTINT(TJclArrayList<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
Modified: trunk/jcl/source/prototypes/JclArraySets.pas
===================================================================
--- trunk/jcl/source/prototypes/JclArraySets.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclArraySets.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -55,13 +55,13 @@
{$I containers\JclArraySets.imp}
type
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
- {$JPPEXPANDMACRO JCLARRAYSETINT(,,,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLARRAYSETINT(,,,,,,,,,,,,,)}
*)
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- (*$JPPEXPANDMACRO JCLARRAYSETINT(TJclArraySet<T>,TJclArrayList<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclSet<T>, IJclItemOwner<T>\, IJclEqualityComparer<T>\, IJclComparer<T>\,,,,const ,AItem,T)*)
+ (*$JPPEXPANDMACRO JCLARRAYSETINT(TJclArraySet<T>,TJclArrayList<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclSet<T>,IJclEqualityComparer<T>,IJclComparer<T>,IJclItemOwner<T>\,,,,const ,AItem,T)*)
// E = External helper to compare items
TJclArraySetE<T> = class(TJclArraySet<T>, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
Modified: trunk/jcl/source/prototypes/JclBinaryTrees.pas
===================================================================
--- trunk/jcl/source/prototypes/JclBinaryTrees.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclBinaryTrees.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -56,7 +56,7 @@
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
{$JPPEXPANDMACRO JCLBINARYTREETYPESINT(,)}
- {$JPPEXPANDMACRO JCLBINARYTREEINT(,,,,,,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLBINARYTREEINT(,,,,,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLBINARYTREEITRINT(,,,,,,,,,,,,,,)}
@@ -71,7 +71,7 @@
TJclInOrderBinaryTreeIterator<T> = class;
TJclPostOrderBinaryTreeIterator<T> = class;
- (*$JPPEXPANDMACRO JCLBINARYTREEINT(TBinaryNode,TJclBinaryTree<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclTree<T>,IJclIterator<T>,IJclTreeIterator<T>, IJclItemOwner<T>\, IJclEqualityComparer<T>\, IJclComparer<T>\,,
+ (*$JPPEXPANDMACRO JCLBINARYTREEINT(TBinaryNode,TJclBinaryTree<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclTree<T>,IJclIterator<T>,IJclTreeIterator<T>,IJclEqualityComparer<T>,IJclComparer<T>,IJclItemOwner<T>\,,
protected
type
Modified: trunk/jcl/source/prototypes/JclLinkedLists.pas
===================================================================
--- trunk/jcl/source/prototypes/JclLinkedLists.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclLinkedLists.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -59,7 +59,7 @@
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
{$JPPEXPANDMACRO JCLLINKEDLISTTYPESINT(,)}
- {$JPPEXPANDMACRO JCLLINKEDLISTINT(,,,,,,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLLINKEDLISTINT(,,,,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLLINKEDLISTITRINT(,,,,,,,,,,)}
@@ -71,7 +71,7 @@
TJclLinkedListIterator<T> = class;
- (*$JPPEXPANDMACRO JCLLINKEDLISTINT(TLinkedListItem,TJclLinkedList<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclList<T>,IJclIterator<T>, IJclItemOwner<T>\, IJclEqualityComparer<T>\,,
+ (*$JPPEXPANDMACRO JCLLINKEDLISTINT(TLinkedListItem,TJclLinkedList<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclList<T>,IJclIterator<T>,IJclEqualityComparer<T>,IJclItemOwner<T>\,,
protected
type
Modified: trunk/jcl/source/prototypes/JclQueues.pas
===================================================================
--- trunk/jcl/source/prototypes/JclQueues.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclQueues.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -48,13 +48,13 @@
{$I containers\JclQueues.int}
type
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
- {$JPPEXPANDMACRO JCLQUEUEINT(,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLQUEUEINT(,,,,,,,,,,)}
*)
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- (*$JPPEXPANDMACRO JCLQUEUEINT(TJclQueue<T>,IJclQueue<T>,TJclAbstractContainer<T>,TDynArray, IJclEqualityComparer<T>\, IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLQUEUEINT(TJclQueue<T>,IJclQueue<T>,TJclAbstractContainer<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
Modified: trunk/jcl/source/prototypes/JclStacks.pas
===================================================================
--- trunk/jcl/source/prototypes/JclStacks.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclStacks.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -58,13 +58,13 @@
{$I containers\JclStacks.int}
type
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
- {$JPPEXPANDMACRO JCLSTACKINT(,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLSTACKINT(,,,,,,,,,,)}
*)
{$IFDEF SUPPORTS_GENERICS}
//DOM-IGNORE-BEGIN
- (*$JPPEXPANDMACRO JCLSTACKINT(TJclStack<T>,IJclStack<T>,TJclAbstractContainer<T>,TDynArray, IJclEqualityComparer<T>\, IJclItemOwner<T>\,,
+ (*$JPPEXPANDMACRO JCLSTACKINT(TJclStack<T>,IJclStack<T>,TJclAbstractContainer<T>,TDynArray,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
Modified: trunk/jcl/source/prototypes/JclVectors.pas
===================================================================
--- trunk/jcl/source/prototypes/JclVectors.pas 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/JclVectors.pas 2012-02-12 14:47:39 UTC (rev 3718)
@@ -56,7 +56,7 @@
type
TItrStart = (isFirst, isLast);
(*$JPPLOOP ALLTYPEINDEX ALLTYPECOUNT
- {$JPPEXPANDMACRO JCLVECTORINT(,,,,,,,,,,,,,,,)}
+ {$JPPEXPANDMACRO JCLVECTORINT(,,,,,,,,,,,,,,,,)}
{$JPPEXPANDMACRO JCLVECTORITRINT(,,,,,,,)}
@@ -66,7 +66,7 @@
TJclVectorIterator<T> = class;
- (*$JPPEXPANDMACRO JCLVECTORINT(TJclVector<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>, IJclItemOwner<T>\, IJclEqualityComparer<T>\,,
+ (*$JPPEXPANDMACRO JCLVECTORINT(TJclVector<T>,TJclAbstractContainer<T>,IJclCollection<T>,IJclList<T>,IJclArray<T>,IJclIterator<T>,IJclEqualityComparer<T>, IJclItemOwner<T>\,,
protected
type
Modified: trunk/jcl/source/prototypes/containers/JclArrayLists.int
===================================================================
--- trunk/jcl/source/prototypes/containers/JclArrayLists.int 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/containers/JclArrayLists.int 2012-02-12 14:47:39 UTC (rev 3718)
@@ -1,7 +1,7 @@
(*$JPPDEFINEMACRO JCLARRAYLISTINT(SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME, ARRAYINTERFACENAME, ITRINTERFACENAME,
- DYNARRAYTYPE, INTERFACEADDITIONAL, SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME)
+ DYNARRAYTYPE, EQUALITYCOMPARERINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME)
SELFCLASSNAME = class(ANCESTORCLASSNAME, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,INTERFACEADDITIONAL
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, EQUALITYCOMPARERINTERFACENAME,INTERFACEADDITIONAL
COLLECTIONINTERFACENAME, LISTINTERFACENAME, ARRAYINTERFACENAME)SECTIONADDITIONAL
private
FElementData: DYNARRAYTYPE;
Modified: trunk/jcl/source/prototypes/containers/JclArraySets.int
===================================================================
--- trunk/jcl/source/prototypes/containers/JclArraySets.int 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/containers/JclArraySets.int 2012-02-12 14:47:39 UTC (rev 3718)
@@ -1,8 +1,9 @@
(*$JPPDEFINEMACRO JCLARRAYSETINT(SELFCLASSNAME, ANCESTORCLASSNAME,
- COLLECTIONINTERFACENAME, LISTINTERFACENAME, ARRAYINTERFACENAME, SETINTERFACENAME, INTERFACEADDITIONAL,
+ COLLECTIONINTERFACENAME, LISTINTERFACENAME, ARRAYINTERFACENAME, SETINTERFACENAME,
+ EQUALITYCOMPARERINTERFACENAME, COMPARERINTERFACENAME, INTERFACEADDITIONAL,
SECTIONADDITIONAL, COLLECTIONFLAGS, CONSTKEYWORD, PARAMETERNAME, TYPENAME)
SELFCLASSNAME = class(ANCESTORCLASSNAME, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,INTERFACEADDITIONAL
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, EQUALITYCOMPARERINTERFACENAME, COMPARERINTERFACENAME,INTERFACEADDITIONAL
COLLECTIONINTERFACENAME, LISTINTERFACENAME, ARRAYINTERFACENAME, SETINTERFACENAME)SECTIONADDITIONAL
private
function BinarySearch(CONSTKEYWORDPARAMETERNAME: TYPENAME): Integer;
Modified: trunk/jcl/source/prototypes/containers/JclBinaryTrees.int
===================================================================
--- trunk/jcl/source/prototypes/containers/JclBinaryTrees.int 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/containers/JclBinaryTrees.int 2012-02-12 14:47:39 UTC (rev 3718)
@@ -6,10 +6,13 @@
Right: NODETYPENAME;
Parent: NODETYPENAME;
end;*)
-(*$JPPDEFINEMACRO JCLBINARYTREEINT(NODETYPENAME, SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME, TREEINTERFACENAME, STDITRINTERFACENAME, TREEITRINTERFACENAME,
- INTERFACEADDITIONAL, SECTIONADDITIONAL, CONSTRUCTORDECLARATIONS, OWNERSHIPDECLARATION, COLLECTIONFLAGS, CONSTKEYWORD, PARAMETERNAME, TYPENAME)
+(*$JPPDEFINEMACRO JCLBINARYTREEINT(NODETYPENAME, SELFCLASSNAME, ANCESTORCLASSNAME,
+ COLLECTIONINTERFACENAME, TREEINTERFACENAME, STDITRINTERFACENAME, TREEITRINTERFACENAME,
+ EQUALITYCOMPARERINTERFACENAME, COMPARERINTERFACENAME, INTERFACEADDITIONAL,
+ SECTIONADDITIONAL, CONSTRUCTORDECLARATIONS, OWNERSHIPDECLARATION, COLLECTIONFLAGS,
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME)
SELFCLASSNAME = class(ANCESTORCLASSNAME, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer,INTERFACEADDITIONAL
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclBaseContainer, EQUALITYCOMPARERINTERFACENAME, COMPARERINTERFACENAME,INTERFACEADDITIONAL
COLLECTIONINTERFACENAME, TREEINTERFACENAME)SECTIONADDITIONAL
private
FMaxDepth: Integer;
Modified: trunk/jcl/source/prototypes/containers/JclLinkedLists.int
===================================================================
--- trunk/jcl/source/prototypes/containers/JclLinkedLists.int 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/containers/JclLinkedLists.int 2012-02-12 14:47:39 UTC (rev 3718)
@@ -5,10 +5,12 @@
Next: ITEMCLASSNAME;
Previous: ITEMCLASSNAME;
end;*)
-(*$JPPDEFINEMACRO JCLLINKEDLISTINT(ITEMCLASSNAME, SELFCLASSNAME, ANCESTORCLASSNAME, COLLECTIONINTERFACENAME, LISTINTERFACENAME, ITRINTERFACENAME,
- INTERFACEADDITIONAL, SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME)
+(*$JPPDEFINEMACRO JCLLINKEDLISTINT(ITEMCLASSNAME, SELFCLASSNAME, ANCESTORCLASSNAME,
+ COLLECTIONINTERFACENAME, LISTINTERFACENAME, ITRINTERFACENAME, EQUALITYCOMPARERINTERFACENAME, INTERFACEADDITIONAL,
+ SECTIONADDITIONAL, COLLECTIONFLAGS, OWNERSHIPDECLARATION,
+ CONSTKEYWORD, PARAMETERNAME, TYPENAME, GETTERNAME, SETTERNAME)
SELFCLASSNAME = class(ANCESTORCLASSNAME, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclBaseContainer,INTERFACEADDITIONAL
+ IJclIntfCloneable, IJclCloneable, IJclBaseContainer, EQUALITYCOMPARERINTERFACENAME,INTERFACEADDITIONAL
COLLECTIONINTERFACENAME, LISTINTERFACENAME)SECTIONADDITIONAL
private
FStart: ITEMCLASSNAME;
Modified: trunk/jcl/source/prototypes/containers/JclQueues.int
===================================================================
--- trunk/jcl/source/prototypes/containers/JclQueues.int 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/containers/JclQueues.int 2012-02-12 14:47:39 UTC (rev 3718)
@@ -1,7 +1,7 @@
(*$JPPDEFINEMACRO JCLQUEUEINT(SELFCLASSNAME, QUEUEINTERFACENAME, ANCESTORCLASSNAME, DYNARRAYTYPENAME,
-INTERFACEADDITIONAL, SECTIONADDITIONAL, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME)
+EQUALITYCOMPARERINTERFACENAME, INTERFACEADDITIONAL, SECTIONADDITIONAL, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME)
SELFCLASSNAME = class(ANCESTORCLASSNAME, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,INTERFACEADDITIONAL
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, EQUALITYCOMPARERINTERFACENAME,INTERFACEADDITIONAL
QUEUEINTERFACENAME)SECTIONADDITIONAL
private
FElements: DYNARRAYTYPENAME;
Modified: trunk/jcl/source/prototypes/containers/JclStacks.int
===================================================================
--- trunk/jcl/source/prototypes/containers/JclStacks.int 2012-02-12 07:43:23 UTC (rev 3717)
+++ trunk/jcl/source/prototypes/containers/JclStacks.int 2012-02-12 14:47:39 UTC (rev 3718)
@@ -1,7 +1,8 @@
(*$JPPDEFINEMACRO JCLSTACKINT(SELFCLASSNAME, STACKINTERFACENAME, ANCESTORCLASSNAME, DYNARRAYTYPENAME,
- INTERFACEADDITIONAL, SECTIONADDITIONAL, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME)
+ EQUALITYCOMPARERINTERFACENAME, INTERFACEADDITIONAL,
+ SECTIONADDITIONAL, OWNERSHIPDECLARATION, CONSTKEYWORD, PARAMETERNAME, TYPENAME)
SELFCLASSNAME = class(ANCESTORCLASSNAME, {$IFDEF THREADSAFE} IJclLockable, {$ENDIF THREADSAFE}
- IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer,INTERFACEADDITIONAL
+ IJclIntfCloneable, IJclCloneable, IJclPackable, IJclGrowable, IJclBaseContainer, EQUALITYCOMP...
[truncated message content] |