source: icXML/icXML-devel/src/icxmlc/XMLAttributeList.hpp @ 2720

Last change on this file since 2720 was 2720, checked in by cameron, 6 years ago

Initial check-in of icXML 0.8 source files

File size: 1.4 KB
Line 
1/*
2 *  Copyright © 2012 International Characters.
3 *  This software is licensed to the public under the Open Software License 3.0.
4 *  icXML is a trademark of International Characters.
5 */
6
7/*
8 * @author Nigel Medforth, nigelm -at- interational-characters.com
9 * @version $Id: XMLAttributeList.hpp 207 2012-12-02 20:38:22Z robc $
10 *
11 */
12
13#ifndef XMLATTRIBUTELIST_HPP
14#define XMLATTRIBUTELIST_HPP
15
16#include <icxmlc/XMLSymbol.hpp>
17#include <icxmlc/Array.hpp>
18#include <xercesc/framework/XMLAttDef.hpp>
19#include <icxmlc/XMLConfig.hpp>
20
21XERCES_CPP_NAMESPACE_BEGIN
22
23class XMLAttribute
24{
25        public:
26
27                XMLAttribute()
28                : fAttribute(0)
29                , fValue(0)
30                , fLength(0)
31                {
32
33                }
34
35                IDISA_ALWAYS_INLINE
36                void set(const XMLSymbol * attribute, const XMLCh * value, const XMLSize_t length)
37                {
38                        fAttribute = attribute;
39                        fValue = value;
40                        fLength = length;
41                }
42
43                IDISA_ALWAYS_INLINE
44                const XMLSymbol * getAttribute() const
45                {
46                        return fAttribute;
47                }
48
49                IDISA_ALWAYS_INLINE
50                const XMLCh * getValue() const
51                {
52                        return fValue;
53                }
54
55                IDISA_ALWAYS_INLINE
56                XMLSize_t getLength() const
57                {
58                        return fLength;
59                }
60
61        private:
62
63                const XMLSymbol *                       fAttribute;
64                const XMLCh *                           fValue;
65                XMLSize_t                                       fLength;
66
67                //XMLAttDef::AttTypes           fType;
68                //bool                                          fSpecified;
69};
70
71
72typedef DynamicArray<XMLAttribute, INITIAL_ATTRIBUTE_LIST_SIZE> XMLAttributeList;
73
74XERCES_CPP_NAMESPACE_END
75
76#endif // XMLATTRIBUTELIST_HPP
Note: See TracBrowser for help on using the repository browser.