1 #ifdef SP_NAMESPACE 2 namespace SP_NAMESPACE { 3 #endif 4 5 6 #ifdef SP_NAMESPACE 7 } 8 #endif 9 // Copyright (c) 1994, 1995 James Clark 10 // See the file COPYING for copying permission. 11 12 #include "splib.h" 13 14 #ifdef SP_MANUAL_INST 15 16 #define SP_DEFINE_TEMPLATES 17 #include "StringOf.h" 18 #include "Vector.h" 19 #include "NCVector.h" 20 #include "ListIter.h" 21 #include "IList.h" 22 #include "List.h" 23 #include "Owner.h" 24 #include "OwnerTable.h" 25 #include "PointerTable.h" 26 #include "HashTableItemBase.h" 27 #include "HashTable.h" 28 #include "Ptr.h" 29 #include "CharMap.h" 30 #undef SP_DEFINE_TEMPLATES 31 32 #include "StorageManager.h" 33 #include "ExtendEntityManager.h" 34 #include "OffsetOrderedList.h" 35 #include "CodingSystem.h" 36 #include "CodingSystemKit.h" 37 #include "types.h" 38 #include "StringOf.h" 39 #include "DescriptorManager.h" 40 #include "StorageManager.h" 41 #include "Boolean.h" 42 #include "StorageObjectPosition.h" 43 #include "CatalogEntry.h" 44 #include "CharsetRegistry.h" 45 46 #ifdef SP_NAMESPACE 47 namespace SP_NAMESPACE { 48 #endif 49 50 #ifdef __DECCXX 51 #pragma define_template String<char> 52 #else 53 #ifdef __xlC__ 54 #pragma define(String<char>) 55 #else 56 #ifdef SP_ANSI_CLASS_INST 57 template class String<char>; 58 #else 59 typedef String<char> Dummy_0; 60 #endif 61 #endif 62 #endif 63 #ifdef __DECCXX 64 #pragma define_template NCVector<Owner<StorageObject> > 65 #else 66 #ifdef __xlC__ 67 #pragma define(NCVector<Owner<StorageObject> >) 68 #else 69 #ifdef SP_ANSI_CLASS_INST 70 template class NCVector<Owner<StorageObject> >; 71 #else 72 typedef NCVector<Owner<StorageObject> > Dummy_1; 73 #endif 74 #endif 75 #endif 76 #ifdef __DECCXX 77 #pragma define_template Vector<StorageObjectSpec> 78 #else 79 #ifdef __xlC__ 80 #pragma define(Vector<StorageObjectSpec>) 81 #else 82 #ifdef SP_ANSI_CLASS_INST 83 template class Vector<StorageObjectSpec>; 84 #else 85 typedef Vector<StorageObjectSpec> Dummy_2; 86 #endif 87 #endif 88 #endif 89 #ifdef __DECCXX 90 #pragma define_template NCVector<Owner<OffsetOrderedListBlock> > 91 #else 92 #ifdef __xlC__ 93 #pragma define(NCVector<Owner<OffsetOrderedListBlock> >) 94 #else 95 #ifdef SP_ANSI_CLASS_INST 96 template class NCVector<Owner<OffsetOrderedListBlock> >; 97 #else 98 typedef NCVector<Owner<OffsetOrderedListBlock> > Dummy_3; 99 #endif 100 #endif 101 #endif 102 #ifdef __DECCXX 103 #pragma define_template NCVector<StorageObjectPosition> 104 #else 105 #ifdef __xlC__ 106 #pragma define(NCVector<StorageObjectPosition>) 107 #else 108 #ifdef SP_ANSI_CLASS_INST 109 template class NCVector<StorageObjectPosition>; 110 #else 111 typedef NCVector<StorageObjectPosition> Dummy_4; 112 #endif 113 #endif 114 #endif 115 #ifdef __DECCXX 116 #pragma define_template IList<ListItem<DescriptorUser*> > 117 #else 118 #ifdef __xlC__ 119 #pragma define(IList<ListItem<DescriptorUser*> >) 120 #else 121 #ifdef SP_ANSI_CLASS_INST 122 template class IList<ListItem<DescriptorUser*> >; 123 #else 124 typedef IList<ListItem<DescriptorUser*> > Dummy_5; 125 #endif 126 #endif 127 #endif 128 #ifdef __DECCXX 129 #pragma define_template List<DescriptorUser*> 130 #else 131 #ifdef __xlC__ 132 #pragma define(List<DescriptorUser*>) 133 #else 134 #ifdef SP_ANSI_CLASS_INST 135 template class List<DescriptorUser*>; 136 #else 137 typedef List<DescriptorUser*> Dummy_6; 138 #endif 139 #endif 140 #endif 141 #ifdef __DECCXX 142 #pragma define_template ListIter<DescriptorUser *> 143 #else 144 #ifdef __xlC__ 145 #pragma define(ListIter<DescriptorUser *>) 146 #else 147 #ifdef SP_ANSI_CLASS_INST 148 template class ListIter<DescriptorUser *>; 149 #else 150 typedef ListIter<DescriptorUser *> Dummy_7; 151 #endif 152 #endif 153 #endif 154 #ifdef __DECCXX 155 #pragma define_template ListItem<DescriptorUser *> 156 #else 157 #ifdef __xlC__ 158 #pragma define(ListItem<DescriptorUser *>) 159 #else 160 #ifdef SP_ANSI_CLASS_INST 161 template class ListItem<DescriptorUser *>; 162 #else 163 typedef ListItem<DescriptorUser *> Dummy_8; 164 #endif 165 #endif 166 #endif 167 #ifdef __DECCXX 168 #pragma define_template IListIter<ListItem<DescriptorUser*> > 169 #else 170 #ifdef __xlC__ 171 #pragma define(IListIter<ListItem<DescriptorUser*> >) 172 #else 173 #ifdef SP_ANSI_CLASS_INST 174 template class IListIter<ListItem<DescriptorUser*> >; 175 #else 176 typedef IListIter<ListItem<DescriptorUser*> > Dummy_9; 177 #endif 178 #endif 179 #endif 180 #ifdef __DECCXX 181 #pragma define_template Owner<StorageObject> 182 #else 183 #ifdef __xlC__ 184 #pragma define(Owner<StorageObject>) 185 #else 186 #ifdef SP_ANSI_CLASS_INST 187 template class Owner<StorageObject>; 188 #else 189 typedef Owner<StorageObject> Dummy_10; 190 #endif 191 #endif 192 #endif 193 #ifdef __DECCXX 194 #pragma define_template Owner<Decoder> 195 #else 196 #ifdef __xlC__ 197 #pragma define(Owner<Decoder>) 198 #else 199 #ifdef SP_ANSI_CLASS_INST 200 template class Owner<Decoder>; 201 #else 202 typedef Owner<Decoder> Dummy_11; 203 #endif 204 #endif 205 #endif 206 #ifdef __DECCXX 207 #pragma define_template Owner<OffsetOrderedListBlock> 208 #else 209 #ifdef __xlC__ 210 #pragma define(Owner<OffsetOrderedListBlock>) 211 #else 212 #ifdef SP_ANSI_CLASS_INST 213 template class Owner<OffsetOrderedListBlock>; 214 #else 215 typedef Owner<OffsetOrderedListBlock> Dummy_12; 216 #endif 217 #endif 218 #endif 219 #ifdef __DECCXX 220 #pragma define_template Owner<ExtendEntityManager::CatalogManager> 221 #else 222 #ifdef __xlC__ 223 #pragma define(Owner<ExtendEntityManager::CatalogManager>) 224 #else 225 #ifdef SP_ANSI_CLASS_INST 226 template class Owner<ExtendEntityManager::CatalogManager>; 227 #else 228 typedef Owner<ExtendEntityManager::CatalogManager> Dummy_13; 229 #endif 230 #endif 231 #endif 232 #ifdef __DECCXX 233 #pragma define_template Owner<StorageManager> 234 #else 235 #ifdef __xlC__ 236 #pragma define(Owner<StorageManager>) 237 #else 238 #ifdef SP_ANSI_CLASS_INST 239 template class Owner<StorageManager>; 240 #else 241 typedef Owner<StorageManager> Dummy_14; 242 #endif 243 #endif 244 #endif 245 #ifdef __DECCXX 246 #pragma define_template NCVector<Owner<StorageManager> > 247 #else 248 #ifdef __xlC__ 249 #pragma define(NCVector<Owner<StorageManager> >) 250 #else 251 #ifdef SP_ANSI_CLASS_INST 252 template class NCVector<Owner<StorageManager> >; 253 #else 254 typedef NCVector<Owner<StorageManager> > Dummy_15; 255 #endif 256 #endif 257 #endif 258 #ifdef __DECCXX 259 #pragma define_template HashTable<String<Char>,CatalogEntry> 260 #else 261 #ifdef __xlC__ 262 #pragma define(HashTable<String<Char>,CatalogEntry>) 263 #else 264 #ifdef SP_ANSI_CLASS_INST 265 template class HashTable<String<Char>,CatalogEntry>; 266 #else 267 typedef HashTable<String<Char>,CatalogEntry> Dummy_16; 268 #endif 269 #endif 270 #endif 271 #ifdef __DECCXX 272 #pragma define_template HashTableIter<String<Char>,CatalogEntry> 273 #else 274 #ifdef __xlC__ 275 #pragma define(HashTableIter<String<Char>,CatalogEntry>) 276 #else 277 #ifdef SP_ANSI_CLASS_INST 278 template class HashTableIter<String<Char>,CatalogEntry>; 279 #else 280 typedef HashTableIter<String<Char>,CatalogEntry> Dummy_17; 281 #endif 282 #endif 283 #endif 284 #ifdef __DECCXX 285 #pragma define_template HashTableItem<String<Char>,CatalogEntry> 286 #else 287 #ifdef __xlC__ 288 #pragma define(HashTableItem<String<Char>,CatalogEntry>) 289 #else 290 #ifdef SP_ANSI_CLASS_INST 291 template class HashTableItem<String<Char>,CatalogEntry>; 292 #else 293 typedef HashTableItem<String<Char>,CatalogEntry> Dummy_18; 294 #endif 295 #endif 296 #endif 297 #ifdef __DECCXX 298 #pragma define_template HashTableItemBase<String<Char> > 299 #else 300 #ifdef __xlC__ 301 #pragma define(HashTableItemBase<String<Char> >) 302 #else 303 #ifdef SP_ANSI_CLASS_INST 304 template class HashTableItemBase<String<Char> >; 305 #else 306 typedef HashTableItemBase<String<Char> > Dummy_19; 307 #endif 308 #endif 309 #endif 310 #ifdef __DECCXX 311 #pragma define_template OwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > > 312 #else 313 #ifdef __xlC__ 314 #pragma define(OwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > >) 315 #else 316 #ifdef SP_ANSI_CLASS_INST 317 template class OwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > >; 318 #else 319 typedef OwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > > Dummy_20; 320 #endif 321 #endif 322 #endif 323 #ifdef __DECCXX 324 #pragma define_template CopyOwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > > 325 #else 326 #ifdef __xlC__ 327 #pragma define(CopyOwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > >) 328 #else 329 #ifdef SP_ANSI_CLASS_INST 330 template class CopyOwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > >; 331 #else 332 typedef CopyOwnerTable<HashTableItemBase<String<Char> >,String<Char>,Hash,HashTableKeyFunction<String<Char> > > Dummy_21; 333 #endif 334 #endif 335 #endif 336 #ifdef __DECCXX 337 #pragma define_template OwnerTableIter<HashTableItemBase<String<Char> >, String<Char>, Hash, HashTableKeyFunction<String<Char> > > 338 #else 339 #ifdef __xlC__ 340 #pragma define(OwnerTableIter<HashTableItemBase<String<Char> >, String<Char>, Hash, HashTableKeyFunction<String<Char> > >) 341 #else 342 #ifdef SP_ANSI_CLASS_INST 343 template class OwnerTableIter<HashTableItemBase<String<Char> >, String<Char>, Hash, HashTableKeyFunction<String<Char> > >; 344 #else 345 typedef OwnerTableIter<HashTableItemBase<String<Char> >, String<Char>, Hash, HashTableKeyFunction<String<Char> > > Dummy_22; 346 #endif 347 #endif 348 #endif 349 #ifdef __DECCXX 350 #pragma define_template PointerTable<HashTableItemBase<String<Char> >*,String<Char>,Hash,HashTableKeyFunction<String<Char> > > 351 #else 352 #ifdef __xlC__ 353 #pragma define(PointerTable<HashTableItemBase<String<Char> >*,String<Char>,Hash,HashTableKeyFunction<String<Char> > >) 354 #else 355 #ifdef SP_ANSI_CLASS_INST 356 template class PointerTable<HashTableItemBase<String<Char> >*,String<Char>,Hash,HashTableKeyFunction<String<Char> > >; 357 #else 358 typedef PointerTable<HashTableItemBase<String<Char> >*,String<Char>,Hash,HashTableKeyFunction<String<Char> > > Dummy_23; 359 #endif 360 #endif 361 #endif 362 #ifdef __DECCXX 363 #pragma define_template PointerTableIter<HashTableItemBase<String<Char> > *, String<Char>, Hash, HashTableKeyFunction<String<Char> > > 364 #else 365 #ifdef __xlC__ 366 #pragma define(PointerTableIter<HashTableItemBase<String<Char> > *, String<Char>, Hash, HashTableKeyFunction<String<Char> > >) 367 #else 368 #ifdef SP_ANSI_CLASS_INST 369 template class PointerTableIter<HashTableItemBase<String<Char> > *, String<Char>, Hash, HashTableKeyFunction<String<Char> > >; 370 #else 371 typedef PointerTableIter<HashTableItemBase<String<Char> > *, String<Char>, Hash, HashTableKeyFunction<String<Char> > > Dummy_24; 372 #endif 373 #endif 374 #endif 375 #ifdef __DECCXX 376 #pragma define_template Vector<HashTableItemBase<String<Char> >*> 377 #else 378 #ifdef __xlC__ 379 #pragma define(Vector<HashTableItemBase<String<Char> >*>) 380 #else 381 #ifdef SP_ANSI_CLASS_INST 382 template class Vector<HashTableItemBase<String<Char> >*>; 383 #else 384 typedef Vector<HashTableItemBase<String<Char> >*> Dummy_25; 385 #endif 386 #endif 387 #endif 388 #ifdef __DECCXX 389 #pragma define_template Ptr<ExtendEntityManager> 390 #else 391 #ifdef __xlC__ 392 #pragma define(Ptr<ExtendEntityManager>) 393 #else 394 #ifdef SP_ANSI_CLASS_INST 395 template class Ptr<ExtendEntityManager>; 396 #else 397 typedef Ptr<ExtendEntityManager> Dummy_26; 398 #endif 399 #endif 400 #endif 401 #ifdef __DECCXX 402 #pragma define_template ConstPtr<ExtendEntityManager> 403 #else 404 #ifdef __xlC__ 405 #pragma define(ConstPtr<ExtendEntityManager>) 406 #else 407 #ifdef SP_ANSI_CLASS_INST 408 template class ConstPtr<ExtendEntityManager>; 409 #else 410 typedef ConstPtr<ExtendEntityManager> Dummy_27; 411 #endif 412 #endif 413 #endif 414 #ifdef __DECCXX 415 #pragma define_template Vector<ParsedSystemId::Map> 416 #else 417 #ifdef __xlC__ 418 #pragma define(Vector<ParsedSystemId::Map>) 419 #else 420 #ifdef SP_ANSI_CLASS_INST 421 template class Vector<ParsedSystemId::Map>; 422 #else 423 typedef Vector<ParsedSystemId::Map> Dummy_28; 424 #endif 425 #endif 426 #endif 427 #ifdef __DECCXX 428 #pragma define_template ConstPtr<InputCodingSystemKit> 429 #else 430 #ifdef __xlC__ 431 #pragma define(ConstPtr<InputCodingSystemKit>) 432 #else 433 #ifdef SP_ANSI_CLASS_INST 434 template class ConstPtr<InputCodingSystemKit>; 435 #else 436 typedef ConstPtr<InputCodingSystemKit> Dummy_29; 437 #endif 438 #endif 439 #endif 440 #ifdef __DECCXX 441 #pragma define_template Ptr<InputCodingSystemKit> 442 #else 443 #ifdef __xlC__ 444 #pragma define(Ptr<InputCodingSystemKit>) 445 #else 446 #ifdef SP_ANSI_CLASS_INST 447 template class Ptr<InputCodingSystemKit>; 448 #else 449 typedef Ptr<InputCodingSystemKit> Dummy_30; 450 #endif 451 #endif 452 #endif 453 #ifdef __DECCXX 454 #pragma define_template ConstPtr<CodingSystemKit> 455 #else 456 #ifdef __xlC__ 457 #pragma define(ConstPtr<CodingSystemKit>) 458 #else 459 #ifdef SP_ANSI_CLASS_INST 460 template class ConstPtr<CodingSystemKit>; 461 #else 462 typedef ConstPtr<CodingSystemKit> Dummy_31; 463 #endif 464 #endif 465 #endif 466 #ifdef __DECCXX 467 #pragma define_template Ptr<CodingSystemKit> 468 #else 469 #ifdef __xlC__ 470 #pragma define(Ptr<CodingSystemKit>) 471 #else 472 #ifdef SP_ANSI_CLASS_INST 473 template class Ptr<CodingSystemKit>; 474 #else 475 typedef Ptr<CodingSystemKit> Dummy_32; 476 #endif 477 #endif 478 #endif 479 #ifdef __DECCXX 480 #pragma define_template CharMap<Char> 481 #else 482 #ifdef __xlC__ 483 #pragma define(CharMap<Char>) 484 #else 485 #ifdef SP_ANSI_CLASS_INST 486 template class CharMap<Char>; 487 #else 488 typedef CharMap<Char> Dummy_33; 489 #endif 490 #endif 491 #endif 492 #ifdef SP_MULTI_BYTE 493 #ifdef __DECCXX 494 #pragma define_template CharMapPage<Char> 495 #else 496 #ifdef __xlC__ 497 #pragma define(CharMapPage<Char>) 498 #else 499 #ifdef SP_ANSI_CLASS_INST 500 template class CharMapPage<Char>; 501 #else 502 typedef CharMapPage<Char> Dummy_34; 503 #endif 504 #endif 505 #endif 506 #ifdef __DECCXX 507 #pragma define_template CharMapColumn<Char> 508 #else 509 #ifdef __xlC__ 510 #pragma define(CharMapColumn<Char>) 511 #else 512 #ifdef SP_ANSI_CLASS_INST 513 template class CharMapColumn<Char>; 514 #else 515 typedef CharMapColumn<Char> Dummy_35; 516 #endif 517 #endif 518 #endif 519 #endif 520 #ifdef __DECCXX 521 #pragma define_template CharMapResource<Char> 522 #else 523 #ifdef __xlC__ 524 #pragma define(CharMapResource<Char>) 525 #else 526 #ifdef SP_ANSI_CLASS_INST 527 template class CharMapResource<Char>; 528 #else 529 typedef CharMapResource<Char> Dummy_36; 530 #endif 531 #endif 532 #endif 533 #ifdef __DECCXX 534 #pragma define_template Ptr<CharMapResource<Char> > 535 #else 536 #ifdef __xlC__ 537 #pragma define(Ptr<CharMapResource<Char> >) 538 #else 539 #ifdef SP_ANSI_CLASS_INST 540 template class Ptr<CharMapResource<Char> >; 541 #else 542 typedef Ptr<CharMapResource<Char> > Dummy_37; 543 #endif 544 #endif 545 #endif 546 #ifdef __DECCXX 547 #pragma define_template ConstPtr<CharMapResource<Char> > 548 #else 549 #ifdef __xlC__ 550 #pragma define(ConstPtr<CharMapResource<Char> >) 551 #else 552 #ifdef SP_ANSI_CLASS_INST 553 template class ConstPtr<CharMapResource<Char> >; 554 #else 555 typedef ConstPtr<CharMapResource<Char> > Dummy_38; 556 #endif 557 #endif 558 #endif 559 #ifdef __DECCXX 560 #pragma define_template Owner<CharsetRegistry::Iter> 561 #else 562 #ifdef __xlC__ 563 #pragma define(Owner<CharsetRegistry::Iter>) 564 #else 565 #ifdef SP_ANSI_CLASS_INST 566 template class Owner<CharsetRegistry::Iter>; 567 #else 568 typedef Owner<CharsetRegistry::Iter> Dummy_39; 569 #endif 570 #endif 571 #endif 572 573 #ifdef SP_NAMESPACE 574 } 575 #endif 576 577 #endif /* SP_MANUAL_INST */ 578