nsgml: Resolve symbol collision when building with SunStudio 12.1
[oweals/cde.git] / cde / programs / nsgmls / EntityCatalog.h
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
6  * These libraries and programs are free software; you can
7  * redistribute them and/or modify them under the terms of the GNU
8  * Lesser General Public License as published by the Free Software
9  * Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * These libraries and programs are distributed in the hope that
13  * they will be useful, but WITHOUT ANY WARRANTY; without even the
14  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  * PURPOSE. See the GNU Lesser General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these libraries and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /* $XConsortium: EntityCatalog.h /main/1 1996/07/29 16:50:18 cde-hp $ */
24 #ifndef EntityCatalog_INCLUDED
25 #define EntityCatalog_INCLUDED 1
26
27 #ifdef __GNUG__
28 #pragma interface
29 #endif
30
31 #include "types.h"
32 #include "StringC.h"
33 #include "Resource.h"
34 #include "SubstTable.h"
35
36 #ifdef SP_NAMESPACE
37 namespace SP_NAMESPACE {
38 #endif
39
40 class Messenger;
41 class CharsetInfo;
42 class EntityDecl;
43
44 class SP_API EntityCatalog : public Resource {
45 public:
46   class SP_API Syntax {
47   public:
48     virtual Boolean namecaseGeneral() const = 0;
49     virtual Boolean namecaseEntity() const = 0;
50     virtual const SubstTable<Char> &upperSubstTable() const = 0;
51     virtual const StringC &peroDelim() const = 0;
52   };
53   virtual ~EntityCatalog();
54   virtual Boolean sgmlDecl(const CharsetInfo &,
55                            Messenger &,
56                            StringC &) const;
57   virtual Boolean lookup(const EntityDecl &,
58                          const Syntax &,
59                          const CharsetInfo &,
60                          Messenger &,
61                          StringC &) const;
62   virtual Boolean lookupPublic(const StringC &,
63                                const CharsetInfo &,
64                                Messenger &,
65                                StringC &) const;
66   virtual Boolean defaultDoctype(const CharsetInfo &,
67                                  Messenger &,
68                                  StringC &,
69                                  StringC &) const;
70 };
71
72 #ifdef SP_NAMESPACE
73 }
74 #endif
75
76 #endif /* not EntityCatalog_INCLUDED */