CodePorting.Translator Cs2Cpp
CodePorting.Translator.Cs2Cpp.Framework
xml_entity_reference.h
1
2
3#pragma once
4
5#include <xml/xml_node_type.h>
6#include <xml/xml_linked_node.h>
7#include <system/string.h>
8
9
11namespace System
12{
13namespace Xml
14{
15class XmlDocument;
16class XmlLoader;
17class XmlNode;
18class XmlWriter;
19} // namespace Xml
20} // namespace System
22
23namespace System {
24
25namespace Xml {
26
31class ASPOSECPP_SHARED_CLASS XmlEntityReference : public XmlLinkedNode
32{
34 typedef XmlLinkedNode BaseType;
35
36 typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
37 ASPOSECPP_SHARED_RTTI_INFO_DECL();
38
39public:
40
43
44private:
46 friend class XmlNode;
47 friend class XmlDocument;
48 friend class XmlLoader;
50
51public:
52
55 ASPOSECPP_SHARED_API String get_Name() override;
58 ASPOSECPP_SHARED_API String get_LocalName() override;
61 ASPOSECPP_SHARED_API String get_Value() override;
66 ASPOSECPP_SHARED_API void set_Value(String value) override;
69 ASPOSECPP_SHARED_API XmlNodeType get_NodeType() override;
73 ASPOSECPP_SHARED_API bool get_IsReadOnly() override;
76 ASPOSECPP_SHARED_API String get_BaseURI() override;
77
84 ASPOSECPP_SHARED_API SharedPtr<XmlNode> CloneNode(bool deep) override;
87 ASPOSECPP_SHARED_API void WriteTo(const SharedPtr<XmlWriter>& w) override;
90 ASPOSECPP_SHARED_API void WriteContentTo(const SharedPtr<XmlWriter>& w) override;
91
92protected:
93
95 ASPOSECPP_SHARED_API bool get_IsContainer() override;
96 ASPOSECPP_SHARED_API SharedPtr<XmlLinkedNode> get_LastNode() override;
97 ASPOSECPP_SHARED_API void set_LastNode(SharedPtr<XmlLinkedNode> value) override;
98 String get_ChildBaseURI();
100
104 ASPOSECPP_SHARED_API XmlEntityReference(const String& name, const SharedPtr<XmlDocument>& doc);
105
107
109 ASPOSECPP_SHARED_API void SetParent(SharedPtr<XmlNode> node) override;
110 ASPOSECPP_SHARED_API void SetParentForLoad(SharedPtr<XmlNode> node) override;
111 ASPOSECPP_SHARED_API bool IsValidChildType(XmlNodeType type) override;
113
114 virtual ASPOSECPP_SHARED_API ~XmlEntityReference();
115
117 #ifdef ASPOSE_GET_SHARED_MEMBERS
118 ASPOSECPP_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
119 #endif
121
122private:
123
124 String _name;
125 SharedPtr<XmlLinkedNode> _lastChild;
126
127 String ConstructBaseURI(const String& baseURI, const String& systemId);
128
129};
130
131} // namespace Xml
132} // namespace System
133
134
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
String class used across the library. Is a substitute for C# System.String when translating code....
Definition: string.h:122
Represents an XML document. You can use this class to load, validate, edit, add, and position XML in ...
Definition: xml_document.h:100
Represents an entity reference node.
Definition: xml_entity_reference.h:32
String get_Name() override
Returns the name of the node.
void set_Value(String value) override
Sets the value of the node.
String get_Value() override
Returns the value of the node.
String get_BaseURI() override
Returns the base Uniform Resource Identifier (URI) of the current node.
bool get_IsReadOnly() override
Returns a value indicating whether the node is read-only.
XmlNodeType get_NodeType() override
Returns the type of the node.
XmlEntityReference(const String &name, const SharedPtr< XmlDocument > &doc)
Initializes a new instance of the XmlEntityReference class.
String get_LocalName() override
Returns the local name of the node.
SharedPtr< XmlNode > CloneNode(bool deep) override
Creates a duplicate of this node.
void WriteContentTo(const SharedPtr< XmlWriter > &w) override
Saves all the children of the node to the specified XmlWriter.
MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(XmlEntityReference, CODEPORTING_ARGS(String name, SharedPtr< XmlDocument > doc))
void WriteTo(const SharedPtr< XmlWriter > &w) override
Saves the node to the specified XmlWriter.
Returns the node immediately preceding or following this node.
Definition: xml_linked_node.h:32
Represents a single node in the XML document.
Definition: xml_node.h:75
@ Xml
Serialize according to the XML 1.0 rules.
XmlNodeType
Specifies the type of node.
Definition: xml_node_type.h:15
Definition: db_command.h:9