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

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

103 lines
2.6 KiB
C++
Raw Normal View History

//
// ProcessingInstruction.h
//
// Library: XML
// Package: DOM
// Module: DOM
//
// Definition of the DOM ProcessingInstruction class.
//
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
#ifndef DOM_ProcessingInstruction_INCLUDED
#define DOM_ProcessingInstruction_INCLUDED
#include "Poco/DOM/AbstractNode.h"
2023-02-13 09:00:23 +00:00
#include "Poco/XML/XML.h"
#include "Poco/XML/XMLString.h"
2023-02-13 09:00:23 +00:00
namespace Poco
{
namespace XML
{
2023-02-13 09:00:23 +00:00
class XML_API ProcessingInstruction : public AbstractNode
/// The ProcessingInstruction interface represents a "processing instruction",
/// used in XML as a way to keep processor-specific information in the text
/// of the document.
{
public:
const XMLString & target() const;
/// Returns the target of this processing instruction.
/// XML defines this as being the first token following
/// the markup that begins the processing instruction.
2023-02-13 09:00:23 +00:00
const XMLString & data() const;
/// Returns the content of this processing instruction. This is from the first non
/// white space character after the target to the character immediately preceding
/// the ?>.
2023-02-13 09:00:23 +00:00
const XMLString & getData() const;
/// Returns the content of this processing instruction. This is from the first non
/// white space character after the target to the character immediately preceding
/// the ?>.
2023-02-13 09:00:23 +00:00
void setData(const XMLString & data);
/// Sets the content of this processing instruction.
2023-02-13 09:00:23 +00:00
// Node
const XMLString & nodeName() const;
const XMLString & getNodeValue() const;
void setNodeValue(const XMLString & data);
unsigned short nodeType() const;
2023-02-13 09:00:23 +00:00
protected:
ProcessingInstruction(Document * pOwnerDocument, const XMLString & target, const XMLString & data);
ProcessingInstruction(Document * pOwnerDocument, const ProcessingInstruction & processingInstruction);
~ProcessingInstruction();
2023-02-13 09:00:23 +00:00
Node * copyNode(bool deep, Document * pOwnerDocument) const;
private:
XMLString _target;
XMLString _data;
friend class Document;
};
//
// inlines
//
inline const XMLString & ProcessingInstruction::target() const
{
return _target;
}
2023-02-13 09:00:23 +00:00
inline const XMLString & ProcessingInstruction::data() const
{
return _data;
}
inline const XMLString & ProcessingInstruction::getData() const
{
return _data;
}
}
} // namespace Poco::XML
#endif // DOM_ProcessingInstruction_INCLUDED