ClickHouse/base/poco/XML/include/Poco/DOM/AttrMap.h

69 lines
1.3 KiB
C++
Raw Normal View History

//
// AttrMap.h
//
// Library: XML
// Package: DOM
// Module: DOM
//
// Definition of the AttrMap class.
//
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
#ifndef DOM_AttrMap_INCLUDED
#define DOM_AttrMap_INCLUDED
#include "Poco/DOM/NamedNodeMap.h"
2023-02-13 09:00:23 +00:00
#include "Poco/XML/XML.h"
2023-02-13 09:00:23 +00:00
namespace Poco
{
namespace XML
{
2023-02-13 09:00:23 +00:00
class Element;
2023-02-13 09:00:23 +00:00
class XML_API AttrMap : public NamedNodeMap
// This implementation of NamedNodeMap is
// returned by Element::attributes()
{
public:
Node * getNamedItem(const XMLString & name) const;
Node * setNamedItem(Node * arg);
Node * removeNamedItem(const XMLString & name);
Node * item(unsigned long index) const;
unsigned long length() const;
2023-02-13 09:00:23 +00:00
Node * getNamedItemNS(const XMLString & namespaceURI, const XMLString & localName) const;
Node * setNamedItemNS(Node * arg);
Node * removeNamedItemNS(const XMLString & namespaceURI, const XMLString & localName);
2023-02-13 09:00:23 +00:00
void autoRelease();
2023-02-13 09:00:23 +00:00
protected:
AttrMap(Element * pElement);
~AttrMap();
2023-02-13 09:00:23 +00:00
private:
AttrMap();
2023-02-13 09:00:23 +00:00
Element * _pElement;
2023-02-13 09:00:23 +00:00
friend class Element;
};
2023-02-13 09:00:23 +00:00
}
} // namespace Poco::XML
#endif // DOM_AttrMap_INCLUDED