Xerces-C++
3.1.3
Main Page
Related Pages
Classes
Files
File List
File Members
src
xercesc
framework
psvi
XSAttributeDeclaration.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: XSAttributeDeclaration.hpp 527149 2007-04-10 14:56:39Z amassari $
20
*/
21
22
#if !defined(XERCESC_INCLUDE_GUARD_XSATTRIBUTEDECLARATION_HPP)
23
#define XERCESC_INCLUDE_GUARD_XSATTRIBUTEDECLARATION_HPP
24
25
#include <
xercesc/framework/psvi/XSObject.hpp
>
26
27
XERCES_CPP_NAMESPACE_BEGIN
28
36
// forward declarations
37
class
XSAnnotation
;
38
class
XSComplexTypeDefinition
;
39
class
XSSimpleTypeDefinition
;
40
class
SchemaAttDef;
41
42
class
XMLPARSER_EXPORT
XSAttributeDeclaration
:
public
XSObject
43
{
44
public
:
45
46
// Constructors and Destructor
47
// -----------------------------------------------------------------------
50
62
XSAttributeDeclaration
63
(
64
SchemaAttDef*
const
attDef
65
,
XSSimpleTypeDefinition
*
const
typeDef
66
,
XSAnnotation
*
const
annot
67
,
XSModel
*
const
xsModel
68
,
XSConstants::SCOPE
scope
69
,
XSComplexTypeDefinition
* enclosingCTDefinition
70
,
MemoryManager
*
const
manager =
XMLPlatformUtils::fgMemoryManager
71
);
72
74
77
~
XSAttributeDeclaration
();
79
80
//---------------------
84
89
const
XMLCh
*
getName
()
const
;
90
95
const
XMLCh
*
getNamespace
();
96
102
XSNamespaceItem
*
getNamespaceItem
();
103
105
109
113
XSSimpleTypeDefinition
*getTypeDefinition()
const
;
114
120
XSConstants::SCOPE
getScope()
const
;
121
126
XSComplexTypeDefinition
*getEnclosingCTDefinition();
127
131
XSConstants::VALUE_CONSTRAINT
getConstraintType()
const
;
132
137
const
XMLCh
*getConstraintValue();
138
142
XSAnnotation
*getAnnotation()
const
;
143
145
146
//----------------------------------
150
151
bool
getRequired()
const
;
153
154
private
:
155
156
void
setEnclosingCTDefinition(
XSComplexTypeDefinition
*
const
toSet);
157
friend
class
XSObjectFactory;
158
159
// -----------------------------------------------------------------------
160
// Unimplemented constructors and operators
161
// -----------------------------------------------------------------------
162
XSAttributeDeclaration
(
const
XSAttributeDeclaration
&);
163
XSAttributeDeclaration
& operator=(
const
XSAttributeDeclaration
&);
164
165
protected
:
166
167
// -----------------------------------------------------------------------
168
// data members
169
// -----------------------------------------------------------------------
170
SchemaAttDef*
fAttDef
;
171
XSSimpleTypeDefinition
*
fTypeDefinition
;
172
XSAnnotation
*
fAnnotation
;
173
XSConstants::SCOPE
fScope
;
174
XSComplexTypeDefinition
*
fEnclosingCTDefinition
;
175
};
176
177
// ---------------------------------------------------------------------------
178
// XSAttributeDeclaration: inline methods
179
// ---------------------------------------------------------------------------
180
inline
XSSimpleTypeDefinition
*
XSAttributeDeclaration::getTypeDefinition
()
const
181
{
182
return
fTypeDefinition
;
183
}
184
185
inline
XSAnnotation
*
XSAttributeDeclaration::getAnnotation
()
const
186
{
187
return
fAnnotation
;
188
}
189
190
inline
XSConstants::SCOPE
XSAttributeDeclaration::getScope
()
const
191
{
192
return
fScope
;
193
}
194
195
inline
XSComplexTypeDefinition
*
XSAttributeDeclaration::getEnclosingCTDefinition
()
196
{
197
return
fEnclosingCTDefinition
;
198
}
199
200
inline
void
XSAttributeDeclaration::setEnclosingCTDefinition
201
(
202
XSComplexTypeDefinition
*
const
toSet
203
)
204
{
205
fEnclosingCTDefinition
= toSet;
206
}
207
208
XERCES_CPP_NAMESPACE_END
209
210
#endif
Generated on Mon Feb 1 2016 13:04:19 for Xerces-C++ by
1.8.1.2