Initial import of the CDE 2.1.30 sources from the Open Group.
[oweals/cde.git] / cde / programs / nsgmls / SgmlParser.C
1 /* $XConsortium: SgmlParser.C /main/1 1996/07/29 17:04:11 cde-hp $ */
2 // Copyright (c) 1994 James Clark
3 // See the file COPYING for copying permission.
4
5 #ifdef __GNUG__
6 #pragma implementation
7 #endif
8
9 #include "splib.h"
10 #include "SgmlParser.h"
11 #include "Parser.h"
12
13 #ifdef SP_NAMESPACE
14 namespace SP_NAMESPACE {
15 #endif
16
17 SgmlParser::SgmlParser()
18 : parser_(0)
19 {
20 }
21
22 SgmlParser::SgmlParser(const Params &params)
23 : parser_(new Parser(params))
24 {
25 }
26
27 void SgmlParser::init(const Params &params)
28 {
29   delete parser_;
30   parser_ = new Parser(params);
31 }
32
33 SgmlParser::~SgmlParser()
34 {
35   delete parser_;
36 }
37
38 Event *SgmlParser::nextEvent()
39 {
40   return parser_->nextEvent();
41 }
42
43 void SgmlParser::parseAll(EventHandler &handler,
44                           SP_CONST SP_VOLATILE sig_atomic_t *cancelPtr)
45 {
46   parser_->parseAll(handler, cancelPtr);
47 }
48
49 ConstPtr<Sd> SgmlParser::sd() const
50 {
51   return parser_->sdPointer();
52 }
53
54 ConstPtr<Syntax> SgmlParser::instanceSyntax() const
55 {
56   return parser_->instanceSyntaxPointer();
57 }
58
59 ConstPtr<Syntax> SgmlParser::prologSyntax() const
60 {
61   return parser_->prologSyntaxPointer();
62 }
63
64 const EntityManager &SgmlParser::entityManager() const
65 {
66   return parser_->entityManager();
67 }
68
69 const EntityCatalog &SgmlParser::entityCatalog() const
70 {
71   return parser_->entityCatalog();
72 }
73
74 void SgmlParser::activateLinkType(const StringC &name)
75 {
76   parser_->activateLinkType(name);
77 }
78
79 void SgmlParser::allLinkTypesActivated()
80 {
81   parser_->allLinkTypesActivated();
82 }
83
84 void SgmlParser::swap(SgmlParser &s)
85 {
86   Parser *tem = parser_;
87   parser_ = s.parser_;
88   s.parser_ = tem;
89 }
90
91 Ptr<Dtd> SgmlParser::baseDtd()
92 {
93   return parser_->baseDtd();
94 }
95
96 const ParserOptions &SgmlParser::options() const
97 {
98   return parser_->options();
99 }
100
101 SgmlParser::Params::Params()
102 : entityType(document),
103   initialCharset(0),
104   parent(0),
105   options(0),
106   subdocInheritActiveLinkTypes(0),
107   subdocReferenced(0),
108   subdocLevel(0)
109 {
110 }
111
112 #ifdef SP_NAMESPACE
113 }
114 #endif