Ignore:
Timestamp:
Oct 31, 2010, 3:14:23 PM (14 years ago)
Author:
george
Message:
  • Modified: Thanks to compiler directives and simple macros specialized types was moved to one unit per base generic class. Directive $DEFINE is used to specify generic class template parameters which will be included to code. This approach enable to define more specialized types per unit.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Generics/TemplateGenerics/TemplateGenerics.lpk

    r83 r84  
    1717    </CompilerOptions>
    1818    <Version Minor="1"/>
    19     <Files Count="35">
     19    <Files Count="15">
    2020      <Item1>
    21         <Filename Value="Specialized\ListDouble.pas"/>
    22         <UnitName Value="ListDouble"/>
     21        <Filename Value="ReadMe.txt"/>
     22        <Type Value="Text"/>
    2323      </Item1>
    2424      <Item2>
    25         <Filename Value="Specialized\ListInteger.pas"/>
    26         <UnitName Value="ListInteger"/>
     25        <Filename Value="Generic\GenericDictionary.inc"/>
     26        <Type Value="Include"/>
    2727      </Item2>
    2828      <Item3>
    29         <Filename Value="Specialized\ListPointer.pas"/>
    30         <UnitName Value="ListPointer"/>
     29        <Filename Value="Generic\GenericList.inc"/>
     30        <Type Value="Include"/>
    3131      </Item3>
    3232      <Item4>
    33         <Filename Value="Specialized\ListString.pas"/>
    34         <UnitName Value="ListString"/>
     33        <Filename Value="Generic\GenericObjectList.inc"/>
     34        <Type Value="Include"/>
    3535      </Item4>
    3636      <Item5>
    37         <Filename Value="Specialized\TreeInteger.pas"/>
    38         <UnitName Value="TreeInteger"/>
     37        <Filename Value="Generic\GenericQueue.inc"/>
     38        <Type Value="Include"/>
    3939      </Item5>
    4040      <Item6>
    41         <Filename Value="Specialized\TreeObject.pas"/>
    42         <UnitName Value="TreeObject"/>
     41        <Filename Value="Generic\GenericRange.inc"/>
     42        <Type Value="Include"/>
    4343      </Item6>
    4444      <Item7>
    45         <Filename Value="Specialized\TreePointer.pas"/>
    46         <UnitName Value="TreePointer"/>
     45        <Filename Value="Generic\GenericSet.inc"/>
     46        <Type Value="Include"/>
    4747      </Item7>
    4848      <Item8>
    49         <Filename Value="Specialized\TreeString.pas"/>
    50         <UnitName Value="TreeString"/>
     49        <Filename Value="Generic\GenericStack.inc"/>
     50        <Type Value="Include"/>
    5151      </Item8>
    5252      <Item9>
    53         <Filename Value="Specialized\DictionaryStringString.pas"/>
    54         <UnitName Value="DictionaryStringString"/>
     53        <Filename Value="Generic\GenericTree.inc"/>
     54        <Type Value="Include"/>
    5555      </Item9>
    5656      <Item10>
    57         <Filename Value="Specialized\StackDouble.pas"/>
    58         <UnitName Value="StackDouble"/>
     57        <Filename Value="Specialized\SpecializedList.pas"/>
     58        <UnitName Value="SpecializedList"/>
    5959      </Item10>
    6060      <Item11>
    61         <Filename Value="Specialized\StackInteger.pas"/>
    62         <UnitName Value="StackInteger"/>
     61        <Filename Value="Specialized\SpecializedDictionary.pas"/>
     62        <UnitName Value="SpecializedDictionary"/>
    6363      </Item11>
    6464      <Item12>
    65         <Filename Value="Specialized\StackObject.pas"/>
    66         <UnitName Value="StackObject"/>
     65        <Filename Value="Specialized\SpecializedStack.pas"/>
     66        <UnitName Value="SpecializedStack"/>
    6767      </Item12>
    6868      <Item13>
    69         <Filename Value="Specialized\StackPointer.pas"/>
    70         <UnitName Value="StackPointer"/>
     69        <Filename Value="Specialized\SpecializedTree.pas"/>
     70        <UnitName Value="SpecializedTree"/>
    7171      </Item13>
    7272      <Item14>
    73         <Filename Value="Specialized\StackString.pas"/>
    74         <UnitName Value="StackString"/>
     73        <Filename Value="Specialized\SpecializedQueue.pas"/>
     74        <UnitName Value="SpecializedQueue"/>
    7575      </Item14>
    7676      <Item15>
    77         <Filename Value="Specialized\QueueDouble.pas"/>
    78         <UnitName Value="QueueDouble"/>
     77        <Filename Value="Specialized\SpecializedSet.pas"/>
     78        <UnitName Value="SpecializedSet"/>
    7979      </Item15>
    80       <Item16>
    81         <Filename Value="Specialized\QueueInteger.pas"/>
    82         <UnitName Value="QueueInteger"/>
    83       </Item16>
    84       <Item17>
    85         <Filename Value="Specialized\QueueObject.pas"/>
    86         <UnitName Value="QueueObject"/>
    87       </Item17>
    88       <Item18>
    89         <Filename Value="Specialized\QueuePointer.pas"/>
    90         <UnitName Value="QueuePointer"/>
    91       </Item18>
    92       <Item19>
    93         <Filename Value="Specialized\QueueString.pas"/>
    94         <UnitName Value="QueueString"/>
    95       </Item19>
    96       <Item20>
    97         <Filename Value="Specialized\ListChar.pas"/>
    98         <UnitName Value="ListChar"/>
    99       </Item20>
    100       <Item21>
    101         <Filename Value="ReadMe.txt"/>
    102         <Type Value="Text"/>
    103       </Item21>
    104       <Item22>
    105         <Filename Value="Specialized\ListVariant.pas"/>
    106         <UnitName Value="ListVariant"/>
    107       </Item22>
    108       <Item23>
    109         <Filename Value="Specialized\SetInteger.pas"/>
    110         <UnitName Value="SetInteger"/>
    111       </Item23>
    112       <Item24>
    113         <Filename Value="Specialized\SetString.pas"/>
    114         <UnitName Value="SetString"/>
    115       </Item24>
    116       <Item25>
    117         <Filename Value="Specialized\SetChar.pas"/>
    118         <UnitName Value="SetChar"/>
    119       </Item25>
    120       <Item26>
    121         <Filename Value="Specialized\RangeDateTime.pas"/>
    122         <UnitName Value="RangeDateTime"/>
    123       </Item26>
    124       <Item27>
    125         <Filename Value="Specialized\ListByte.pas"/>
    126         <UnitName Value="ListByte"/>
    127       </Item27>
    128       <Item28>
    129         <Filename Value="Generic\GenericDictionary.inc"/>
    130         <Type Value="Include"/>
    131       </Item28>
    132       <Item29>
    133         <Filename Value="Generic\GenericList.inc"/>
    134         <Type Value="Include"/>
    135       </Item29>
    136       <Item30>
    137         <Filename Value="Generic\GenericObjectList.inc"/>
    138         <Type Value="Include"/>
    139       </Item30>
    140       <Item31>
    141         <Filename Value="Generic\GenericQueue.inc"/>
    142         <Type Value="Include"/>
    143       </Item31>
    144       <Item32>
    145         <Filename Value="Generic\GenericRange.inc"/>
    146         <Type Value="Include"/>
    147       </Item32>
    148       <Item33>
    149         <Filename Value="Generic\GenericSet.inc"/>
    150         <Type Value="Include"/>
    151       </Item33>
    152       <Item34>
    153         <Filename Value="Generic\GenericStack.inc"/>
    154         <Type Value="Include"/>
    155       </Item34>
    156       <Item35>
    157         <Filename Value="Generic\GenericTree.inc"/>
    158         <Type Value="Include"/>
    159       </Item35>
    16080    </Files>
    16181    <Type Value="RunAndDesignTime"/>
Note: See TracChangeset for help on using the changeset viewer.