|  | 
Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members 
 DOM_DocumentFragment  Class ReferenceDocumentFragmentis a "lightweight" or "minimal"Documentobject. 
More...
#include <DOM_DocumentFragment.hpp> 
Inheritance diagram for DOM_DocumentFragment  [legend]Collaboration diagram for DOM_DocumentFragment:  [legend]List of all members. 
 Detailed DescriptionDocumentFragmentis a "lightweight" or "minimal"Documentobject.
It is very common to want to be able to  extract a portion of a document's tree or to create a new fragment of a  document. Imagine implementing a user command like cut or rearranging a  document by moving fragments around. It is desirable to have an object  which can hold such fragments and it is quite natural to use a Node for  this purpose. While it is true that a Documentobject could  fulfil this role, aDocumentobject can potentially be a  heavyweight object, depending on the underlying implementation. What is  really needed for this is a very lightweight object.DocumentFragmentis such an object. 
Furthermore, various operations -- such as inserting nodes as children  of another Node-- may takeDocumentFragmentobjects as arguments; this results in all the child nodes of theDocumentFragmentbeing moved to the child list of this node. 
The children of a DocumentFragmentnode are zero or more  nodes representing the tops of any sub-trees defining the structure of the  document.DocumentFragmentnodes do not need to be  well-formed XML documents (although they do need to follow the rules  imposed upon well-formed XML parsed entities, which can have multiple top  nodes). For example, aDocumentFragmentmight have only one  child and that child node could be aTextnode. Such a  structure model represents neither an HTML document nor a well-formed XML  document. 
When a DocumentFragmentis inserted into aDocument(or indeed any otherNodethat may take  children) the children of theDocumentFragmentand not theDocumentFragmentitself are inserted into theNode. This makes theDocumentFragmentvery  useful when the user wishes to create nodes that are siblings; theDocumentFragmentacts as the parent of these nodes so that the user can use the standard methods from theNodeinterface,  such asinsertBefore()andappendChild(). 
 
 Constructor & Destructor Documentation
 
  
    | 
        
          | DOM_DocumentFragment::DOM_DocumentFragment ( | ) |  |  
  
    |  | 
Default constructor for DOM_DocumentFragment. 
The resulting object does not refer to an actual Document Fragment node; it will compare == to 0, and is similar to a null object reference variable in Java. It may subsequently be assigned to refer to an actual Document Fragment node. 
 
 New document fragment nodes are created by DOM_Document::createDocumentFragment().      |  
 
  
    | 
        
          | DOM_DocumentFragment::DOM_DocumentFragment ( | const DOM_DocumentFragment & other ) |  |  
  
    |  | 
Copy constructor.
 
Creates a new DOM_DocumentFragmentthat refers to the same underlying node as the original. See also DOM_Node::clone(), which will copy the actual Document fragment node, rather than just creating a new reference to the original node. 
Parameters: 
| other | The object to be copied | 
 |  
 
  
    | 
        
          | DOM_DocumentFragment::~DOM_DocumentFragment ( | ) |  |  
  
    |  | 
Destructor.
 
The object being destroyed is the reference object, not the underlying Comment node itself.      |  
 
  
    | 
        
          | DOM_DocumentFragment::DOM_DocumentFragment ( | DocumentFragmentImpl * )  [protected] |  |  
 Member Function Documentation
 
  
    | 
        
          | DOM_DocumentFragment & DOM_DocumentFragment::operator= ( | const DOM_NullPtr * val ) |  |  
  
    |  | 
Assignment operator.
 
This overloaded variant is provided for the sole purpose of setting a DOM_Node reference variable to zero. Nulling out a reference variable in this way will decrement the reference count on the underlying Node object that the variable formerly referenced. This effect is normally obtained when reference variable goes out of scope, but zeroing them can be useful for global instances, or for local instances that will remain in scope for an extended time, when the storage belonging to the underlying node needs to be reclaimed. 
Parameters: 
| val. | Only a value of 0, or null, is allowed. | 
 
Reimplemented from DOM_Node.     |  
 
  
    | 
        
          | DOM_DocumentFragment & DOM_DocumentFragment::operator= ( | const DOM_DocumentFragment & other ) |  |  
  
    |  | 
Assignment operator.
 
 
Parameters: 
| other | The object to be copied | 
 |  
 Friends And Related Function Documentation
 
  
    | 
        
          | class DOM_Document  [friend] |  |  
 The documentation for this class was generated from the following file:
 |