1 #ifdef SP_NAMESPACE 2 namespace SP_NAMESPACE { 3 #endif 4 5 6 #ifdef SP_NAMESPACE 7 } 8 #endif 9 // Copyright (c) 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 "Owner.h" 18 #include "CopyOwner.h" 19 #include "RangeMap.h" 20 #include "Ptr.h" 21 #include "StringOf.h" 22 #include "StringC.h" 23 #include "Vector.h" 24 #include "ISet.h" 25 #include "ISetIter.h" 26 #include "XcharMap.h" 27 #include "StringResource.h" 28 #include "SubstTable.h" 29 #include "CharMap.h" 30 #undef SP_DEFINE_TEMPLATES 31 32 #include "types.h" 33 #include "Location.h" 34 #include "Message.h" 35 #include "NamedResource.h" 36 #include "EntityManager.h" 37 38 #ifdef SP_NAMESPACE 39 namespace SP_NAMESPACE { 40 #endif 41 42 #ifdef __DECCXX 43 #pragma define_template Ptr<InputSourceOrigin> 44 #else 45 #ifdef __xlC__ 46 #pragma define(Ptr<InputSourceOrigin>) 47 #else 48 #ifdef SP_ANSI_CLASS_INST 49 template class Ptr<InputSourceOrigin>; 50 #else 51 typedef Ptr<InputSourceOrigin> Dummy_0; 52 #endif 53 #endif 54 #endif 55 #ifdef __DECCXX 56 #pragma define_template ConstPtr<InputSourceOrigin> 57 #else 58 #ifdef __xlC__ 59 #pragma define(ConstPtr<InputSourceOrigin>) 60 #else 61 #ifdef SP_ANSI_CLASS_INST 62 template class ConstPtr<InputSourceOrigin>; 63 #else 64 typedef ConstPtr<InputSourceOrigin> Dummy_1; 65 #endif 66 #endif 67 #endif 68 #ifdef __DECCXX 69 #pragma define_template Ptr<Origin> 70 #else 71 #ifdef __xlC__ 72 #pragma define(Ptr<Origin>) 73 #else 74 #ifdef SP_ANSI_CLASS_INST 75 template class Ptr<Origin>; 76 #else 77 typedef Ptr<Origin> Dummy_2; 78 #endif 79 #endif 80 #endif 81 #ifdef __DECCXX 82 #pragma define_template ConstPtr<Origin> 83 #else 84 #ifdef __xlC__ 85 #pragma define(ConstPtr<Origin>) 86 #else 87 #ifdef SP_ANSI_CLASS_INST 88 template class ConstPtr<Origin>; 89 #else 90 typedef ConstPtr<Origin> Dummy_3; 91 #endif 92 #endif 93 #endif 94 #ifdef __DECCXX 95 #pragma define_template Ptr<SharedXcharMap<unsigned char> > 96 #else 97 #ifdef __xlC__ 98 #pragma define(Ptr<SharedXcharMap<unsigned char> >) 99 #else 100 #ifdef SP_ANSI_CLASS_INST 101 template class Ptr<SharedXcharMap<unsigned char> >; 102 #else 103 typedef Ptr<SharedXcharMap<unsigned char> > Dummy_4; 104 #endif 105 #endif 106 #endif 107 #ifdef __DECCXX 108 #pragma define_template ConstPtr<SharedXcharMap<unsigned char> > 109 #else 110 #ifdef __xlC__ 111 #pragma define(ConstPtr<SharedXcharMap<unsigned char> >) 112 #else 113 #ifdef SP_ANSI_CLASS_INST 114 template class ConstPtr<SharedXcharMap<unsigned char> >; 115 #else 116 typedef ConstPtr<SharedXcharMap<unsigned char> > Dummy_5; 117 #endif 118 #endif 119 #endif 120 #ifdef __DECCXX 121 #pragma define_template Ptr<SharedXcharMap<PackedBoolean> > 122 #else 123 #ifdef __xlC__ 124 #pragma define(Ptr<SharedXcharMap<PackedBoolean> >) 125 #else 126 #ifdef SP_ANSI_CLASS_INST 127 template class Ptr<SharedXcharMap<PackedBoolean> >; 128 #else 129 typedef Ptr<SharedXcharMap<PackedBoolean> > Dummy_6; 130 #endif 131 #endif 132 #endif 133 #ifdef __DECCXX 134 #pragma define_template ConstPtr<SharedXcharMap<PackedBoolean> > 135 #else 136 #ifdef __xlC__ 137 #pragma define(ConstPtr<SharedXcharMap<PackedBoolean> >) 138 #else 139 #ifdef SP_ANSI_CLASS_INST 140 template class ConstPtr<SharedXcharMap<PackedBoolean> >; 141 #else 142 typedef ConstPtr<SharedXcharMap<PackedBoolean> > Dummy_7; 143 #endif 144 #endif 145 #endif 146 #ifdef __DECCXX 147 #pragma define_template Ptr<SharedXcharMap<EquivCode> > 148 #else 149 #ifdef __xlC__ 150 #pragma define(Ptr<SharedXcharMap<EquivCode> >) 151 #else 152 #ifdef SP_ANSI_CLASS_INST 153 template class Ptr<SharedXcharMap<EquivCode> >; 154 #else 155 typedef Ptr<SharedXcharMap<EquivCode> > Dummy_8; 156 #endif 157 #endif 158 #endif 159 #ifdef __DECCXX 160 #pragma define_template ConstPtr<SharedXcharMap<EquivCode> > 161 #else 162 #ifdef __xlC__ 163 #pragma define(ConstPtr<SharedXcharMap<EquivCode> >) 164 #else 165 #ifdef SP_ANSI_CLASS_INST 166 template class ConstPtr<SharedXcharMap<EquivCode> >; 167 #else 168 typedef ConstPtr<SharedXcharMap<EquivCode> > Dummy_9; 169 #endif 170 #endif 171 #endif 172 #ifdef __DECCXX 173 #pragma define_template Ptr<StringResource<Char> > 174 #else 175 #ifdef __xlC__ 176 #pragma define(Ptr<StringResource<Char> >) 177 #else 178 #ifdef SP_ANSI_CLASS_INST 179 template class Ptr<StringResource<Char> >; 180 #else 181 typedef Ptr<StringResource<Char> > Dummy_10; 182 #endif 183 #endif 184 #endif 185 #ifdef __DECCXX 186 #pragma define_template ConstPtr<StringResource<Char> > 187 #else 188 #ifdef __xlC__ 189 #pragma define(ConstPtr<StringResource<Char> >) 190 #else 191 #ifdef SP_ANSI_CLASS_INST 192 template class ConstPtr<StringResource<Char> >; 193 #else 194 typedef ConstPtr<StringResource<Char> > Dummy_11; 195 #endif 196 #endif 197 #endif 198 #ifdef __DECCXX 199 #pragma define_template Ptr<NamedResource> 200 #else 201 #ifdef __xlC__ 202 #pragma define(Ptr<NamedResource>) 203 #else 204 #ifdef SP_ANSI_CLASS_INST 205 template class Ptr<NamedResource>; 206 #else 207 typedef Ptr<NamedResource> Dummy_12; 208 #endif 209 #endif 210 #endif 211 #ifdef __DECCXX 212 #pragma define_template ConstPtr<NamedResource> 213 #else 214 #ifdef __xlC__ 215 #pragma define(ConstPtr<NamedResource>) 216 #else 217 #ifdef SP_ANSI_CLASS_INST 218 template class ConstPtr<NamedResource>; 219 #else 220 typedef ConstPtr<NamedResource> Dummy_13; 221 #endif 222 #endif 223 #endif 224 #ifdef __DECCXX 225 #pragma define_template Ptr<EntityManager> 226 #else 227 #ifdef __xlC__ 228 #pragma define(Ptr<EntityManager>) 229 #else 230 #ifdef SP_ANSI_CLASS_INST 231 template class Ptr<EntityManager>; 232 #else 233 typedef Ptr<EntityManager> Dummy_14; 234 #endif 235 #endif 236 #endif 237 #ifdef __DECCXX 238 #pragma define_template ConstPtr<EntityManager> 239 #else 240 #ifdef __xlC__ 241 #pragma define(ConstPtr<EntityManager>) 242 #else 243 #ifdef SP_ANSI_CLASS_INST 244 template class ConstPtr<EntityManager>; 245 #else 246 typedef ConstPtr<EntityManager> Dummy_15; 247 #endif 248 #endif 249 #endif 250 #ifdef __DECCXX 251 #pragma define_template Ptr<EntityCatalog> 252 #else 253 #ifdef __xlC__ 254 #pragma define(Ptr<EntityCatalog>) 255 #else 256 #ifdef SP_ANSI_CLASS_INST 257 template class Ptr<EntityCatalog>; 258 #else 259 typedef Ptr<EntityCatalog> Dummy_16; 260 #endif 261 #endif 262 #endif 263 #ifdef __DECCXX 264 #pragma define_template ConstPtr<EntityCatalog> 265 #else 266 #ifdef __xlC__ 267 #pragma define(ConstPtr<EntityCatalog>) 268 #else 269 #ifdef SP_ANSI_CLASS_INST 270 template class ConstPtr<EntityCatalog>; 271 #else 272 typedef ConstPtr<EntityCatalog> Dummy_17; 273 #endif 274 #endif 275 #endif 276 #ifdef __DECCXX 277 #pragma define_template Owner<MessageArg> 278 #else 279 #ifdef __xlC__ 280 #pragma define(Owner<MessageArg>) 281 #else 282 #ifdef SP_ANSI_CLASS_INST 283 template class Owner<MessageArg>; 284 #else 285 typedef Owner<MessageArg> Dummy_18; 286 #endif 287 #endif 288 #endif 289 #ifdef __DECCXX 290 #pragma define_template CopyOwner<MessageArg> 291 #else 292 #ifdef __xlC__ 293 #pragma define(CopyOwner<MessageArg>) 294 #else 295 #ifdef SP_ANSI_CLASS_INST 296 template class CopyOwner<MessageArg>; 297 #else 298 typedef CopyOwner<MessageArg> Dummy_19; 299 #endif 300 #endif 301 #endif 302 #ifdef __DECCXX 303 #pragma define_template String<Char> 304 #else 305 #ifdef __xlC__ 306 #pragma define(String<Char>) 307 #else 308 #ifdef SP_ANSI_CLASS_INST 309 template class String<Char>; 310 #else 311 typedef String<Char> Dummy_20; 312 #endif 313 #endif 314 #endif 315 #ifdef __DECCXX 316 #pragma define_template Vector<OpenElementInfo> 317 #else 318 #ifdef __xlC__ 319 #pragma define(Vector<OpenElementInfo>) 320 #else 321 #ifdef SP_ANSI_CLASS_INST 322 template class Vector<OpenElementInfo>; 323 #else 324 typedef Vector<OpenElementInfo> Dummy_21; 325 #endif 326 #endif 327 #endif 328 #ifdef __DECCXX 329 #pragma define_template Vector<CopyOwner<MessageArg> > 330 #else 331 #ifdef __xlC__ 332 #pragma define(Vector<CopyOwner<MessageArg> >) 333 #else 334 #ifdef SP_ANSI_CLASS_INST 335 template class Vector<CopyOwner<MessageArg> >; 336 #else 337 typedef Vector<CopyOwner<MessageArg> > Dummy_22; 338 #endif 339 #endif 340 #endif 341 #ifdef __DECCXX 342 #pragma define_template SharedXcharMap<unsigned char> 343 #else 344 #ifdef __xlC__ 345 #pragma define(SharedXcharMap<unsigned char>) 346 #else 347 #ifdef SP_ANSI_CLASS_INST 348 template class SharedXcharMap<unsigned char>; 349 #else 350 typedef SharedXcharMap<unsigned char> Dummy_23; 351 #endif 352 #endif 353 #endif 354 #ifdef __DECCXX 355 #pragma define_template XcharMap<unsigned char> 356 #else 357 #ifdef __xlC__ 358 #pragma define(XcharMap<unsigned char>) 359 #else 360 #ifdef SP_ANSI_CLASS_INST 361 template class XcharMap<unsigned char>; 362 #else 363 typedef XcharMap<unsigned char> Dummy_24; 364 #endif 365 #endif 366 #endif 367 #ifdef __DECCXX 368 #pragma define_template Vector<RangeMapRange<WideChar,UnivChar> > 369 #else 370 #ifdef __xlC__ 371 #pragma define(Vector<RangeMapRange<WideChar,UnivChar> >) 372 #else 373 #ifdef SP_ANSI_CLASS_INST 374 template class Vector<RangeMapRange<WideChar,UnivChar> >; 375 #else 376 typedef Vector<RangeMapRange<WideChar,UnivChar> > Dummy_25; 377 #endif 378 #endif 379 #endif 380 #ifdef __DECCXX 381 #pragma define_template RangeMapIter<WideChar,UnivChar> 382 #else 383 #ifdef __xlC__ 384 #pragma define(RangeMapIter<WideChar,UnivChar>) 385 #else 386 #ifdef SP_ANSI_CLASS_INST 387 template class RangeMapIter<WideChar,UnivChar>; 388 #else 389 typedef RangeMapIter<WideChar,UnivChar> Dummy_26; 390 #endif 391 #endif 392 #endif 393 #ifdef __DECCXX 394 #pragma define_template RangeMap<WideChar,UnivChar> 395 #else 396 #ifdef __xlC__ 397 #pragma define(RangeMap<WideChar,UnivChar>) 398 #else 399 #ifdef SP_ANSI_CLASS_INST 400 template class RangeMap<WideChar,UnivChar>; 401 #else 402 typedef RangeMap<WideChar,UnivChar> Dummy_27; 403 #endif 404 #endif 405 #endif 406 #ifdef __DECCXX 407 #pragma define_template Vector<InputSourceOriginNamedCharRef> 408 #else 409 #ifdef __xlC__ 410 #pragma define(Vector<InputSourceOriginNamedCharRef>) 411 #else 412 #ifdef SP_ANSI_CLASS_INST 413 template class Vector<InputSourceOriginNamedCharRef>; 414 #else 415 typedef Vector<InputSourceOriginNamedCharRef> Dummy_28; 416 #endif 417 #endif 418 #endif 419 #ifdef __DECCXX 420 #pragma define_template Vector<StringC> 421 #else 422 #ifdef __xlC__ 423 #pragma define(Vector<StringC>) 424 #else 425 #ifdef SP_ANSI_CLASS_INST 426 template class Vector<StringC>; 427 #else 428 typedef Vector<StringC> Dummy_29; 429 #endif 430 #endif 431 #endif 432 #ifdef __DECCXX 433 #pragma define_template Owner<ExternalInfo> 434 #else 435 #ifdef __xlC__ 436 #pragma define(Owner<ExternalInfo>) 437 #else 438 #ifdef SP_ANSI_CLASS_INST 439 template class Owner<ExternalInfo>; 440 #else 441 typedef Owner<ExternalInfo> Dummy_30; 442 #endif 443 #endif 444 #endif 445 #ifdef __DECCXX 446 #pragma define_template ISet<Char> 447 #else 448 #ifdef __xlC__ 449 #pragma define(ISet<Char>) 450 #else 451 #ifdef SP_ANSI_CLASS_INST 452 template class ISet<Char>; 453 #else 454 typedef ISet<Char> Dummy_31; 455 #endif 456 #endif 457 #endif 458 #ifdef __DECCXX 459 #pragma define_template Vector<ISetRange<Char> > 460 #else 461 #ifdef __xlC__ 462 #pragma define(Vector<ISetRange<Char> >) 463 #else 464 #ifdef SP_ANSI_CLASS_INST 465 template class Vector<ISetRange<Char> >; 466 #else 467 typedef Vector<ISetRange<Char> > Dummy_32; 468 #endif 469 #endif 470 #endif 471 #ifdef __DECCXX 472 #pragma define_template ISet<WideChar> 473 #else 474 #ifdef __xlC__ 475 #pragma define(ISet<WideChar>) 476 #else 477 #ifdef SP_ANSI_CLASS_INST 478 template class ISet<WideChar>; 479 #else 480 typedef ISet<WideChar> Dummy_33; 481 #endif 482 #endif 483 #endif 484 #ifdef __DECCXX 485 #pragma define_template ISetIter<Char> 486 #else 487 #ifdef __xlC__ 488 #pragma define(ISetIter<Char>) 489 #else 490 #ifdef SP_ANSI_CLASS_INST 491 template class ISetIter<Char>; 492 #else 493 typedef ISetIter<Char> Dummy_34; 494 #endif 495 #endif 496 #endif 497 #ifdef __DECCXX 498 #pragma define_template ISetIter<WideChar> 499 #else 500 #ifdef __xlC__ 501 #pragma define(ISetIter<WideChar>) 502 #else 503 #ifdef SP_ANSI_CLASS_INST 504 template class ISetIter<WideChar>; 505 #else 506 typedef ISetIter<WideChar> Dummy_35; 507 #endif 508 #endif 509 #endif 510 #ifdef __DECCXX 511 #pragma define_template Vector<ISetRange<WideChar> > 512 #else 513 #ifdef __xlC__ 514 #pragma define(Vector<ISetRange<WideChar> >) 515 #else 516 #ifdef SP_ANSI_CLASS_INST 517 template class Vector<ISetRange<WideChar> >; 518 #else 519 typedef Vector<ISetRange<WideChar> > Dummy_36; 520 #endif 521 #endif 522 #endif 523 #ifdef __DECCXX 524 #pragma define_template SharedXcharMap<PackedBoolean> 525 #else 526 #ifdef __xlC__ 527 #pragma define(SharedXcharMap<PackedBoolean>) 528 #else 529 #ifdef SP_ANSI_CLASS_INST 530 template class SharedXcharMap<PackedBoolean>; 531 #else 532 typedef SharedXcharMap<PackedBoolean> Dummy_37; 533 #endif 534 #endif 535 #endif 536 #ifdef __DECCXX 537 #pragma define_template SharedXcharMap<EquivCode> 538 #else 539 #ifdef __xlC__ 540 #pragma define(SharedXcharMap<EquivCode>) 541 #else 542 #ifdef SP_ANSI_CLASS_INST 543 template class SharedXcharMap<EquivCode>; 544 #else 545 typedef SharedXcharMap<EquivCode> Dummy_38; 546 #endif 547 #endif 548 #endif 549 #ifdef __DECCXX 550 #pragma define_template String<SyntaxChar> 551 #else 552 #ifdef __xlC__ 553 #pragma define(String<SyntaxChar>) 554 #else 555 #ifdef SP_ANSI_CLASS_INST 556 template class String<SyntaxChar>; 557 #else 558 typedef String<SyntaxChar> Dummy_39; 559 #endif 560 #endif 561 #endif 562 #ifdef __DECCXX 563 #pragma define_template XcharMap<PackedBoolean> 564 #else 565 #ifdef __xlC__ 566 #pragma define(XcharMap<PackedBoolean>) 567 #else 568 #ifdef SP_ANSI_CLASS_INST 569 template class XcharMap<PackedBoolean>; 570 #else 571 typedef XcharMap<PackedBoolean> Dummy_40; 572 #endif 573 #endif 574 #endif 575 #ifdef __DECCXX 576 #pragma define_template XcharMap<EquivCode> 577 #else 578 #ifdef __xlC__ 579 #pragma define(XcharMap<EquivCode>) 580 #else 581 #ifdef SP_ANSI_CLASS_INST 582 template class XcharMap<EquivCode>; 583 #else 584 typedef XcharMap<EquivCode> Dummy_41; 585 #endif 586 #endif 587 #endif 588 #ifdef __DECCXX 589 #pragma define_template Vector<char> 590 #else 591 #ifdef __xlC__ 592 #pragma define(Vector<char>) 593 #else 594 #ifdef SP_ANSI_CLASS_INST 595 template class Vector<char>; 596 #else 597 typedef Vector<char> Dummy_42; 598 #endif 599 #endif 600 #endif 601 #if defined(SP_HAVE_BOOL) && defined(SP_SIZEOF_BOOL_1) 602 #ifdef __DECCXX 603 #pragma define_template Vector<PackedBoolean> 604 #else 605 #ifdef __xlC__ 606 #pragma define(Vector<PackedBoolean>) 607 #else 608 #ifdef SP_ANSI_CLASS_INST 609 template class Vector<PackedBoolean>; 610 #else 611 typedef Vector<PackedBoolean> Dummy_43; 612 #endif 613 #endif 614 #endif 615 #endif 616 #ifdef __DECCXX 617 #pragma define_template CharMap<Unsigned32> 618 #else 619 #ifdef __xlC__ 620 #pragma define(CharMap<Unsigned32>) 621 #else 622 #ifdef SP_ANSI_CLASS_INST 623 template class CharMap<Unsigned32>; 624 #else 625 typedef CharMap<Unsigned32> Dummy_44; 626 #endif 627 #endif 628 #endif 629 #ifdef SP_MULTI_BYTE 630 #ifdef __DECCXX 631 #pragma define_template CharMapPlane<Unsigned32> 632 #else 633 #ifdef __xlC__ 634 #pragma define(CharMapPlane<Unsigned32>) 635 #else 636 #ifdef SP_ANSI_CLASS_INST 637 template class CharMapPlane<Unsigned32>; 638 #else 639 typedef CharMapPlane<Unsigned32> Dummy_45; 640 #endif 641 #endif 642 #endif 643 #ifdef __DECCXX 644 #pragma define_template CharMapPage<Unsigned32> 645 #else 646 #ifdef __xlC__ 647 #pragma define(CharMapPage<Unsigned32>) 648 #else 649 #ifdef SP_ANSI_CLASS_INST 650 template class CharMapPage<Unsigned32>; 651 #else 652 typedef CharMapPage<Unsigned32> Dummy_46; 653 #endif 654 #endif 655 #endif 656 #ifdef __DECCXX 657 #pragma define_template CharMapColumn<Unsigned32> 658 #else 659 #ifdef __xlC__ 660 #pragma define(CharMapColumn<Unsigned32>) 661 #else 662 #ifdef SP_ANSI_CLASS_INST 663 template class CharMapColumn<Unsigned32>; 664 #else 665 typedef CharMapColumn<Unsigned32> Dummy_47; 666 #endif 667 #endif 668 #endif 669 #endif 670 #ifdef __DECCXX 671 #pragma define_template CharMapResource<Unsigned32> 672 #else 673 #ifdef __xlC__ 674 #pragma define(CharMapResource<Unsigned32>) 675 #else 676 #ifdef SP_ANSI_CLASS_INST 677 template class CharMapResource<Unsigned32>; 678 #else 679 typedef CharMapResource<Unsigned32> Dummy_48; 680 #endif 681 #endif 682 #endif 683 #ifdef __DECCXX 684 #pragma define_template Ptr<CharMapResource<Unsigned32> > 685 #else 686 #ifdef __xlC__ 687 #pragma define(Ptr<CharMapResource<Unsigned32> >) 688 #else 689 #ifdef SP_ANSI_CLASS_INST 690 template class Ptr<CharMapResource<Unsigned32> >; 691 #else 692 typedef Ptr<CharMapResource<Unsigned32> > Dummy_49; 693 #endif 694 #endif 695 #endif 696 #ifdef __DECCXX 697 #pragma define_template ConstPtr<CharMapResource<Unsigned32> > 698 #else 699 #ifdef __xlC__ 700 #pragma define(ConstPtr<CharMapResource<Unsigned32> >) 701 #else 702 #ifdef SP_ANSI_CLASS_INST 703 template class ConstPtr<CharMapResource<Unsigned32> >; 704 #else 705 typedef ConstPtr<CharMapResource<Unsigned32> > Dummy_50; 706 #endif 707 #endif 708 #endif 709 #ifdef __DECCXX 710 #pragma define_template Vector<SubstTable::Pair> 711 #else 712 #ifdef __xlC__ 713 #pragma define(Vector<SubstTable::Pair>) 714 #else 715 #ifdef SP_ANSI_CLASS_INST 716 template class Vector<SubstTable::Pair>; 717 #else 718 typedef Vector<SubstTable::Pair> Dummy_51; 719 #endif 720 #endif 721 #endif 722 723 #ifdef SP_NAMESPACE 724 } 725 #endif 726 727 #endif /* SP_MANUAL_INST */ 728