Represents the text content of an XML element or attribute. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...

Inherits System::Xml::XmlCharacterData.

Public Types

typedef SharedPtr< XmlTextPtr
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::XmlNode
typedef SharedPtr< XmlNodePtr
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 

Public Member Functions

String get_Name () const override
 Returns the qualified name of the node represented by the current object. More...
 
int get_Length () const override
 Returns the length of the data in characters. More...
 
void WriteTo (SharedPtr< XmlWriter > writer) override
 Saves the XML node represented by the current object to the specified XmlWriter object. More...
 
- Public Member Functions inherited from System::Xml::XmlCharacterData
virtual String get_Data () const
 Returns the content of the node represented by the current object. More...
 
virtual void set_Data (String value)
 Sets the content of the node represented by the current object. More...
 
virtual void AppendData (String strData)
 Appends the specified string to the content of the node represented by the current object. More...
 
virtual void DeleteData (int offset, int count)
 Removes the specified substring from the content of the node represented by the current object. More...
 
virtual void InsertData (int offset, String strData)
 Insert the specified string at the specified position in the content string. More...
 
virtual void ReplaceData (int offset, int count, String strData)
 Replaces the specified content string of the node represented by the current object with the specified string. More...
 
virtual String Substring (int offset, int count)
 Returns the specified substring of the node's content string. More...
 
XmlNode::Ptr CloneNode (bool deep) override
 NOT IMPLEMENTED. More...
 
- Public Member Functions inherited from System::Xml::XmlNode
virtual String get_BaseURI () const
 NOT IMPLEMENTED. More...
 
virtual XmlNodeType get_NodeType () const
 Returns the type of the XML node represented by the current object. More...
 
virtual String get_Value () const
 Returns the value of the XML node represented by the current object. More...
 
virtual String get_LocalName () const
 Returns the local name of the XML node represented by the current object. More...
 
virtual String get_Prefix () const
 Returns the prefix of the XML node represented by the current object. More...
 
virtual String get_NamespaceURI () const
 Returns the namespace URI of the XML node represented by the current object. More...
 
virtual String get_InnerText () const
 Returns the concatenated values of the XML node represented by the current object and all its child nodes. More...
 
virtual String get_InnerXml () const
 Returns the XML markup representing the child nodes of the XML node represented by the current object. More...
 
virtual String get_OuterXml () const
 Returns the XML markup representing the XML node represented by the current object and all its the child nodes. More...
 
virtual bool get_HasChildNodes () const
 Determines if the XML node represented by the current object has child nodes. More...
 
virtual XmlNode::Ptr get_FirstChild () const
 Returns the first child of the node represented by the current object. More...
 
virtual XmlNode::Ptr get_LastChild () const
 Returns the last child of the node represented by the current object. More...
 
virtual XmlNode::Ptr get_NextSibling () const
 Returns the next sibling of the node represented by the current object. More...
 
virtual XmlNode::Ptr get_PreviousSibling () const
 Returns the previous sibling of the node represented by the current object. More...
 
virtual XmlNode::Ptr get_ParentNode () const
 Returns the parent node of the node represented by the current object. More...
 
virtual SharedPtr< XmlDocumentget_OwnerDocument () const
 Returns a shared pointer to an XmlDocument object representing an XML document node to which the node represented by the current object belongs. More...
 
virtual SharedPtr< XmlAttributeCollectionget_Attributes ()
 Returns an XmlAttributeCollection object containing all attributes of the XML node represented by the current object. More...
 
virtual SharedPtr< XmlNodeListget_ChildNodes ()
 Returns an XmlNodeList object containing all child nodes of the XML node represented by the current object. More...
 
virtual SharedPtr< Schema::IXmlSchemaInfoget_SchemaInfo ()
 
virtual void set_Value (String value)
 Sets the value of the node represented by the current object. More...
 
virtual void set_Prefix (String)
 Sets the prefix of the XML node represented by the current object. More...
 
virtual void set_InnerText (String value)
 Sets the XML node's inner text by replacing all the child nodes (if any) with the contents of the given string. More...
 
virtual void set_InnerXml (String value)
 Replaces the XML node's inner XML markup with the contents of the specified string. More...
 
virtual SharedPtr< XmlElementidx_get (String) const
 Returns a shared pointer to the newly constructed XmlElement object. More...
 
virtual SharedPtr< XmlElementoperator[] (String name) const
 Returns a shared pointer to the XmlElement object representing the child element of the XML node represented by the current object with the specified qualified name. More...
 
virtual XmlNode::Ptr AppendChild (XmlNode::Ptr child)
 Adds the specified XML node at the end of the list of children of the XML node represented by the current object. More...
 
virtual XmlNode::Ptr PrependChild (XmlNode::Ptr new_child)
 Adds the specified XML node at the beginning of the list of children of the XML node represented by the current object. More...
 
virtual XmlNode::Ptr ReplaceChild (XmlNode::Ptr new_child, XmlNode::Ptr old_child)
 Replaces the specified the specified child node of the node reprsented by the current object with another one. More...
 
virtual XmlNode::Ptr InsertAfter (XmlNode::Ptr new_child, XmlNode::Ptr ref_child)
 Adds the specified XML node to the list of children of the XML node represented by the current object at the position next to the position of the specified reference child node. More...
 
virtual XmlNode::Ptr InsertBefore (XmlNode::Ptr new_child, XmlNode::Ptr ref_child)
 Adds the specified XML node to the list of children of the XML document represented by the current object at the position prior to the position of the specified reference child node. More...
 
virtual void RemoveAll ()
 Removes all child nodes of the XML node reprsented by the current object. More...
 
virtual XmlNode::Ptr RemoveChild (XmlNode::Ptr child)
 Removes the specified child node of the XML node represented by the current object. More...
 
virtual String GetPrefixOfNamespace (const String &namespace_uri)
 Looks up the closest xmlns declaration for the specified namespace URI that is in scope for the XML node represented by the current object and returns the prefix defined in that declaration. More...
 
virtual String GetNamespaceOfPrefix (const String &prefix)
 Looks up the closest xmlns declaration for the specified prefix that is in scope for the XML node represented by the current object and returns the namespace URI defined in that declaration. More...
 
virtual void WriteContentTo (SharedPtr< XmlWriter > writer)
 Saves all children of the XML node represented by the current object to the specified XmlWriter object. More...
 
virtual SharedPtr< XmlNodeListSelectNodes (String xPath)
 Returns a list of XML nodes that match the specfied XPath expression. More...
 
virtual SharedPtr< XmlNodeListSelectNodes (String xPath, SharedPtr< XmlNamespaceManager > nsMgr)
 Returns a list of XML nodes that match the specfied XPath expression; any prefixes encountered in xpath expression are resolved using the specified namespace manager. More...
 
virtual XmlNode::Ptr SelectSingleNode (String xPath)
 Returns the first XML node that match the specfied XPath expression. More...
 
virtual XmlNode::Ptr SelectSingleNode (String xPath, SharedPtr< XmlNamespaceManager > nsMgr)
 Returns the first XML node that match the specfied XPath expression; any prefixes encountered in xpath expression are resolved using the specified namespace manager. More...
 
SharedPtr< System::Collections::Generic::IEnumerator< XmlNode::Ptr > > GetEnumerator ()
 Returns an enumerator that points to the collection containing child nodes of the node represented by the current object. More...
 
XmlNode::Ptr Clone ()
 Returns a copy of the node represented by the current object. The subtree under the node is also copied. This method is equivallent to calling CloneNode(true). More...
 
xmlNode * native_node ()
 Returns a pointer to the underlying libxml2 xmlNode object. More...
 
virtual SharedPtr< XPath::XPathNavigatorCreateNavigator () override
 Creates an instance of XPath::XPathNavigator class for navigating an XML document represented by the current object. More...
 
virtual void Normalize ()
 Puts all XmlText nodes in the full depth of the sub-tree underneath this XmlNode into a "normal" form where only markup (that is, tags, comments, processing instructions, CDATA sections, and entity references) separates XmlText nodes, that is, there are no adjacent XmlText nodes. Not implemented. More...
 
- Public Member Functions inherited from System::Object
 Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ~Object ()
 Destroys object. Frees all internal data structures. More...
 
 Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared reference counter. More...
 
void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual int32_t GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual String ToString () const
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual void SetTemplateWeakPtr (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 Specialization of Object::ReferenceEquals for case of string and nullptr. More...
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 Specialization of Object::ReferenceEquals for case of strings. More...
 

Protected Member Functions

 ~XmlText () override
 Destructor. More...
 
 XmlText (xmlNode *node, const SharedPtr< XmlDocument > &owner)
 Constructs an instance of XmlNode class that represents the specified XML node and belongs to the specified owner XML document. More...
 
 XmlText (const String &strData, const SharedPtr< XmlDocument > &doc)
 NOT IMPLEMENTED. More...
 
- Protected Member Functions inherited from System::Xml::XmlCharacterData
 ~XmlCharacterData () override
 Destructor. More...
 
 XmlCharacterData (xmlNode *node, const SharedPtr< XmlDocument > &owner)
 Constructs an XmlCharacterData object that represents the specified native node and belongs to the specified XmlDocument. More...
 
 XmlCharacterData (const String &data, const SharedPtr< XmlDocument > &doc)
 NOT IMPLEMENTED. More...
 
- Protected Member Functions inherited from System::Xml::XmlNode
 ~XmlNode () override
 Destructor. More...
 
 XmlNode (xmlNode *node)
 Constructs an instance of XmlNode class that represents the specified XML node. More...
 
 XmlNode (xmlNode *node, const SharedPtr< XmlDocument > &owner)
 Constructs an instance of XmlNode class that represents the specified XML node and belongs to the specified owner XML document. More...
 
 XmlNode (const SharedPtr< XmlDocument > &owner)
 Constructs an instance of XmlNode class that belongs to the specified document. The underlying libxml2 xmlNode object is not created. This constructor is intended to be used by XmlDeclaration class only. More...
 
SharedPtr< XmlElementfind_child_xml_element_by_name (const String &name, const SharedPtr< XmlDocument > &owner_doc) const
 Looks up an XML element with the specified name which is a descandant of the specified XML document. More...
 
uint64_t child_elements_count () const
 Returns the number of children of all levels of the XML node represented by the current object. More...
 
bool can_be_append (XmlNodeType type) const
 Determines if an XML node of the specified type can be added as a child node to the XML node represented by the current object. More...
 
insert_where noralize_place (xmlNode *ref_child, insert_where place)
 Normalizes the indicator of the position where the node is to be inserted by making it consistent with the reference child value and presence of nodes in the list of children of the current node. More...
 
void insert_verified_child_node (const XmlNode::Ptr &child, xmlNode *ref_child, insert_where place)
 Inserts the specified node in the list of children of the node represented by the current object at the specified position. More...
 
void insert_document_fragment (const XmlNode::Ptr &fragment, xmlNode *ref_child, insert_where place)
 Inserts the nodes of the specified document fragment in the list of children of the node represented by the current object at the specified position. More...
 
void reassign_native (xmlNode *node)
 Replaces the node reprsented by the current object with the specified one. More...
 
xmlAttr * get_attribute_by_qname (const String &qname) const
 Returns an attribute with the specified qualified name. More...
 
xmlNs * find_ns (const std::string &prefix) const
 Returns a namespace associated with the specified prefix. More...
 
void set_Value (const String &text, bool riseEvent)
 Sets the value of the XML node represented by the current object and triggers corresponding events. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Implements C# typeof(System.Object) construct. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool Equals (double const &objA, double const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
- Protected Types inherited from System::Xml::XmlNode
enum  insert_where { insert_begin , insert_before , insert_after , insert_end }
 Specifies the position in the child nodes list where to insert a node during insertion operation. More...
 
- Static Protected Member Functions inherited from System::Xml::XmlNode
static xmlNs * make_new_ns (xmlNodePtr parent, const std::string &prefix, const std::string &uri="")
 Creates a new namespace. More...
 
static int parse_qname (const System::String &qname, std::string &prefix, std::string &local_name)
 Parses the XML node's qualified name by breaking it into a prefix and a local name. More...
 
static int csharp_nodetype_to_libxml (XmlNodeType type)
 Converts the specified XML node type represented as an XmlNodeType value to equivalent value defied by libxml2 library. More...
 
static XmlNode::Ptr create_wrapper (xmlNode *node, const SharedPtr< XmlDocument > &owner, const std::shared_ptr< xmlDoc > &doc=nullptr)
 Creates an instance of XmlNode class that represents the specified node and belongs to the specified document. More...
 
static SharedPtr< XmlAttributecreate_wrapper_attr (xmlAttr *attr, const SharedPtr< XmlDocument > &owner)
 Creates an instance of XmlAttribute class that represents the specified attribute and belongs to the specified document. More...
 
static SharedPtr< XmlAttributecreate_wrapper_attr (xmlNs *ns, const SharedPtr< XmlDocument > &owner, const SharedPtr< XmlElement > &element)
 Creates an instance of XmlAttribute class that represents an xmlns attribute and belongs to the specified document. More...
 
static SharedPtr< XmlAttributecreate_wrapper_attr (const String &prefix, const String &local_name, const String &namespace_uri, const SharedPtr< XmlDocument > &owner)
 Constructs an XmlAttribute object that represents a detached XML attribute belonging to the specified owner. More...
 
template<typename T >
static SharedPtr< T > create_aliasing_wrapper (const SharedPtr< T > &ptr, const SharedPtr< XmlDocument > &document)
 Creates a shared pointer for pointee to an XML-node with aliasing constructor to own a document. More...
 

Detailed Description

Represents the text content of an XML element or attribute. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Member Typedef Documentation

◆ Ptr

An alias for shared pointer to an instance of this class.

Constructor & Destructor Documentation

◆ ~XmlText()

System::Xml::XmlText::~XmlText ( )
overrideprotected

Destructor.

◆ XmlText() [1/2]

System::Xml::XmlText::XmlText ( xmlNode *  node,
const SharedPtr< XmlDocument > &  owner 
)
protected

Constructs an instance of XmlNode class that represents the specified XML node and belongs to the specified owner XML document.

Parameters
nodeThe node to be represented by the object being constructed
ownerThe XML document to which the XML node represented by the object being constructed should belong.

◆ XmlText() [2/2]

System::Xml::XmlText::XmlText ( const String strData,
const SharedPtr< XmlDocument > &  doc 
)
protected

NOT IMPLEMENTED.

Exceptions
NotImplementedException

Member Function Documentation

◆ get_Length()

int System::Xml::XmlText::get_Length ( ) const
inlineoverridevirtual

Returns the length of the data in characters.

Implements System::Xml::XmlCharacterData.

◆ get_Name()

String System::Xml::XmlText::get_Name ( ) const
inlineoverridevirtual

Returns the qualified name of the node represented by the current object.

Implements System::Xml::XmlNode.

◆ WriteTo()

void System::Xml::XmlText::WriteTo ( SharedPtr< XmlWriter writer)
overridevirtual

Saves the XML node represented by the current object to the specified XmlWriter object.

Parameters
writerA XmlWriter object to save the node to

Implements System::Xml::XmlNode.