source: icXML/icXML-devel/src/xercesc/dom/DOMStringList.hpp @ 2722

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

Original Xerces files with import mods for icxercesc

File size: 4.4 KB
Line 
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: DOMStringList.hpp 671894 2008-06-26 13:29:21Z borisk $
20 */
21
22#if !defined(XERCESC_INCLUDE_GUARD_DOMSTRINGLIST_HPP)
23#define XERCESC_INCLUDE_GUARD_DOMSTRINGLIST_HPP
24
25#include <xercesc/util/XercesDefs.hpp>
26
27XERCES_CPP_NAMESPACE_BEGIN
28
29
30/**
31 * The <code>DOMStringList</code> interface provides the abstraction of an ordered
32 * collection of strings, without defining or constraining how this collection
33 * is implemented. The items in the <code>DOMStringList</code> are accessible via
34 * an integral index, starting from 0.
35 */
36
37class  CDOM_EXPORT DOMStringList {
38protected:
39    // -----------------------------------------------------------------------
40    //  Hidden constructors
41    // -----------------------------------------------------------------------
42    /** @name Hidden constructors */
43    //@{
44    DOMStringList() {};
45    //@}
46
47private:
48    // -----------------------------------------------------------------------
49    // Unimplemented constructors and operators
50    // -----------------------------------------------------------------------
51    /** @name Unimplemented constructors and operators */
52    //@{
53    DOMStringList(const DOMStringList &);
54    DOMStringList & operator = (const DOMStringList &);
55    //@}
56
57public:
58    // -----------------------------------------------------------------------
59    //  All constructors are hidden, just the destructor is available
60    // -----------------------------------------------------------------------
61    /** @name Destructor */
62    //@{
63    /**
64     * Destructor
65     *
66     */
67    virtual ~DOMStringList()  {};
68    //@}
69
70    // -----------------------------------------------------------------------
71    //  Virtual DOMStringList interface
72    // -----------------------------------------------------------------------
73    /** @name Functions introduced in DOM Level 3 */
74    //@{
75    // -----------------------------------------------------------------------
76    //  Getter methods
77    // -----------------------------------------------------------------------
78    /**
79     * Returns the <code>index</code> item in the collection.
80     *
81     * If <code>index</code> is greater than or equal to the number of strings in
82     * the list, this returns <code>null</code>.
83     *
84     * @param index Index into the collection.
85     * @return The string at the <code>index</code>th position in the
86     *   <code>DOMStringList</code>, or <code>null</code> if that is not a valid
87     *   index.
88     * @since DOM Level 3
89     */
90    virtual const XMLCh *item(XMLSize_t index) const = 0;
91
92    /**
93     * Returns the number of strings in the list.
94     *
95     * The range of valid child node indices is 0 to <code>length-1</code> inclusive.
96     *
97     * @since DOM Level 3
98     */
99    virtual XMLSize_t getLength() const = 0;
100
101    /**
102     * Test if a string is part of this DOMStringList
103     *
104     * @return <code>true</code> if the string has been found, <code>false</code> otherwise.
105     *
106     * @since DOM Level 3
107     */
108    virtual bool contains(const XMLCh*) const = 0;
109    //@}
110
111    // -----------------------------------------------------------------------
112    //  Non-standard Extension
113    // -----------------------------------------------------------------------
114    /** @name Non-standard Extension */
115    //@{
116    /**
117     * Called to indicate that this list is no longer in use
118     * and that the implementation may relinquish any resources associated with it and
119     * its associated children.
120     *
121     * Access to a released object will lead to unexpected result.
122     *
123     */
124    virtual void release() = 0;
125    //@}
126
127};
128
129XERCES_CPP_NAMESPACE_END
130
131#endif
Note: See TracBrowser for help on using the repository browser.