Xerces-C++ 3.2.4

XSMultiValueFacet.hpp
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18/*
19 * $Id$
20 */
21
22#if !defined(XERCESC_INCLUDE_GUARD_XSMULTIVALUEFACET_HPP)
23#define XERCESC_INCLUDE_GUARD_XSMULTIVALUEFACET_HPP
24
25#include <xercesc/framework/psvi/XSObject.hpp>
26#include <xercesc/framework/psvi/XSSimpleTypeDefinition.hpp>
27
28 XERCES_CPP_NAMESPACE_BEGIN
29
37// forward declarations
38 class XSAnnotation;
39
40 class XMLPARSER_EXPORT XSMultiValueFacet : public XSObject
41{
42 public:
43
44 // Constructors and Destructor
45 // -----------------------------------------------------------------------
48
59 XSMultiValueFacet
60 (
61 XSSimpleTypeDefinition::FACET facetKind
62 , StringList* lexicalValues
63 , bool isFixed
64 , XSAnnotation* const headAnnot
65 , XSModel* const xsModel
66 , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager
67 );
68
70
73 ~XSMultiValueFacet();
75
76 //---------------------
80
84 XSSimpleTypeDefinition::FACET getFacetKind() const;
85
89 StringList *getLexicalFacetValues();
90
94 bool isFixed() const;
95
99 XSAnnotationList *getAnnotations();
100
102
103 //----------------------------------
107
109 private:
110
111 // -----------------------------------------------------------------------
112 // Unimplemented constructors and operators
113 // -----------------------------------------------------------------------
114 XSMultiValueFacet(const XSMultiValueFacet&);
115 XSMultiValueFacet & operator=(const XSMultiValueFacet &);
116
117 protected:
118
119 // -----------------------------------------------------------------------
120 // data members
121 // -----------------------------------------------------------------------
122 XSSimpleTypeDefinition::FACET fFacetKind;
123 bool fIsFixed;
124 StringList* fLexicalValues; // not owned by this class
125 XSAnnotationList* fXSAnnotationList;
126};
127
128
129 inline XSSimpleTypeDefinition::FACET XSMultiValueFacet::getFacetKind() const
130{
131 return fFacetKind;
132}
133
134 inline bool XSMultiValueFacet::isFixed() const
135{
136 return fIsFixed;
137}
138
139 inline StringList *XSMultiValueFacet::getLexicalFacetValues()
140{
141 return fLexicalValues;
142}
143
144 inline XSAnnotationList *XSMultiValueFacet::getAnnotations()
145{
146 return fXSAnnotationList;
147}
148
149
150 XERCES_CPP_NAMESPACE_END
151
152#endif
XSAnnotationList
RefVectorOf< XSAnnotation > XSAnnotationList
Definition: XSConstants.hpp:41
StringList
RefArrayVectorOf< XMLCh > StringList
Definition: XSConstants.hpp:54
XSObject.hpp
XSSimpleTypeDefinition.hpp
XMLPARSER_EXPORT
#define XMLPARSER_EXPORT
Definition: XercesDefs.hpp:163
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
MemoryManager
Configurable memory manager.
Definition: MemoryManager.hpp:40
XMLPlatformUtils::fgMemoryManager
static MemoryManager * fgMemoryManager
The configurable memory manager.
Definition: PlatformUtils.hpp:121
XSAnnotation
Definition: XSAnnotation.hpp:42
XSModel
Definition: XSModel.hpp:60
XSMultiValueFacet
Definition: XSMultiValueFacet.hpp:41
XSMultiValueFacet::fFacetKind
XSSimpleTypeDefinition::FACET fFacetKind
Definition: XSMultiValueFacet.hpp:122
XSMultiValueFacet::fLexicalValues
StringList * fLexicalValues
Definition: XSMultiValueFacet.hpp:124
XSMultiValueFacet::getAnnotations
XSAnnotationList * getAnnotations()
Definition: XSMultiValueFacet.hpp:144
XSMultiValueFacet::XSMultiValueFacet
XSMultiValueFacet(XSSimpleTypeDefinition::FACET facetKind, StringList *lexicalValues, bool isFixed, XSAnnotation *const headAnnot, XSModel *const xsModel, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
The default constructor.
XSMultiValueFacet::fXSAnnotationList
XSAnnotationList * fXSAnnotationList
Definition: XSMultiValueFacet.hpp:125
XSMultiValueFacet::getFacetKind
XSSimpleTypeDefinition::FACET getFacetKind() const
Definition: XSMultiValueFacet.hpp:129
XSMultiValueFacet::~XSMultiValueFacet
~XSMultiValueFacet()
XSMultiValueFacet::getLexicalFacetValues
StringList * getLexicalFacetValues()
Definition: XSMultiValueFacet.hpp:139
XSMultiValueFacet::fIsFixed
bool fIsFixed
Definition: XSMultiValueFacet.hpp:123
XSMultiValueFacet::isFixed
bool isFixed() const
Check whether a facet value is fixed.
Definition: XSMultiValueFacet.hpp:134
XSObject
Definition: XSObject.hpp:43
XSSimpleTypeDefinition::FACET
FACET
Definition: XSSimpleTypeDefinition.hpp:68