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