## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.9

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

# XalanEmptyNamedNodeMap Class Reference

Inheritance diagram for XalanEmptyNamedNodeMap:

[legend]
Collaboration diagram for XalanEmptyNamedNodeMap:

[legend]
List of all members.

## Public Member Functions

- XalanEmptyNamedNodeMap ()
- virtual ~XalanEmptyNamedNodeMap ()
- XalanEmptyNamedNodeMap (const XalanEmptyNamedNodeMap &theSource)
- XalanEmptyNamedNodeMap & operator= (const XalanEmptyNamedNodeMap &theSource)
- bool operator== (const XalanEmptyNamedNodeMap &theRHS) const
- virtual XalanNode * setNamedItem (XalanNode *arg)
    Adds a node using its `nodeName` attribute.
- virtual XalanNode * item (unsigned int index) const
    Returns the `index`th item in the map.
- virtual XalanNode * getNamedItem (const XalanDOMString &name) const
    Retrieves a node specified by name.
- virtual unsigned int getLength () const
    The number of nodes in the map.
- virtual XalanNode * removeNamedItem (const XalanDOMString &name)
    Removes a node specified by name.
- virtual XalanNode * getNamedItemNS (const XalanDOMString &namespaceURI, const XalanDOMString &localName) const
    Retrieves a node specified by local name and namespace URI.
- virtual XalanNode * setNamedItemNS (XalanNode *arg)
    Adds a node using its `namespaceURI` and `localName`.
- virtual XalanNode * removeNamedItemNS (const XalanDOMString &namespaceURI, const XalanDOMString &localName)
    Removes a node specified by local name and namespace URI.

## Constructor & Destructor Documentation

XalanEmptyNamedNodeMap::XalanEmptyNamedNodeMap | ( |  | ) |

virtual XalanEmptyNamedNodeMap::~XalanEmptyNamedNodeMap | ( |  | ) | `[virtual]`

XalanEmptyNamedNodeMap::XalanEmptyNamedNodeMap | ( | const XalanEmptyNamedNodeMap & | theSource | ) |

## Member Function Documentation

virtual unsigned int XalanEmptyNamedNodeMap::getLength | ( |  | ) | const`[virtual]`

| The number of nodes in the map. The range of valid child node indices is 0 to `length-1` inclusive. Implements XalanNamedNodeMap.

virtual XalanNode* XalanEmptyNamedNodeMap::getNamedItem | ( | const XalanDOMString & | name | ) | const`[virtual]`

Retrieves a node specified by name.

Parameters:

  name | The `nodeName` of a node to retrieve.

Returns:
  A `Node` (of any type) with the specified `nodeName`, or `null` if it does not identify any node in the map.

Implements XalanNamedNodeMap.

virtual XalanNode* XalanEmptyNamedNodeMap::getNamedItemNS | ( | const XalanDOMString & | namespaceURI,
|  | const XalanDOMString & | localName
| ) | const`[virtual]`

Retrieves a node specified by local name and namespace URI.

Parameters:

  namespaceURI | The namespace URI of the node to retrieve.
  localName | The local name of the node to retrieve.

Returns:
  A `Node` (of any type) with the specified local name and namespace URI, or `null` if they do not identify any node in the map.

Implements XalanNamedNodeMap.

virtual XalanNode* XalanEmptyNamedNodeMap::item | ( | unsigned int | index | ) | const`[virtual]`

Returns the `index`th item in the map.

If `index` is greater than or equal to the number of nodes in the map, this returns `null`.

Parameters:

  index | Index into the map.

Returns:
  The node at the `index`th position in the `NamedNodeMap`, or `null` if that is not a valid index.

Implements XalanNamedNodeMap.

XalanEmptyNamedNodeMap& XalanEmptyNamedNodeMap::operator= | ( | const XalanEmptyNamedNodeMap & | theSource | ) |

bool XalanEmptyNamedNodeMap::operator== | ( | const XalanEmptyNamedNodeMap & | theRHS | ) | const

virtual XalanNode* XalanEmptyNamedNodeMap::removeNamedItem | ( | const XalanDOMString & | name | ) | `[virtual]`

Removes a node specified by name.

If the removed node is an `Attr` with a default value it is immediately replaced.

Parameters:

  name | The `nodeName` of a node to remove.

Returns:
  The node removed from the map or `null` if no node with such a name exists.

Exceptions:

  DOMException | NOT_FOUND_ERR: Raised if there is no node named `name` in the map. NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly.

Implements XalanNamedNodeMap.

virtual XalanNode* XalanEmptyNamedNodeMap::removeNamedItemNS | ( | const XalanDOMString & | namespaceURI,
|  | const XalanDOMString & | localName
| ) | `[virtual]`

Removes a node specified by local name and namespace URI.

Parameters:

  namespaceURI | The namespace URI of the node to remove.
  localName | The local name of the node to remove. When this `NamedNodeMap` contains the attributes attached to an element, as returned by the attributes attribute of the `Node` interface, if the removed attribute is known to have a default value, an attribute immediately appears containing the default value as well as the corresponding namespace URI, local name, and prefix.

Returns:
  The node removed from the map if a node with such a local name and namespace URI exists.

Exceptions:

  DOMException | NOT_FOUND_ERR: Raised if there is no node named `name` in the map. NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly.

Implements XalanNamedNodeMap.

virtual XalanNode* XalanEmptyNamedNodeMap::setNamedItem | ( | XalanNode * | arg | ) | `[virtual]`

Adds a node using its `nodeName` attribute.

As the `nodeName` attribute is used to derive the name which the node must be stored under, multiple nodes of certain types (those that have a "special" string value) cannot be stored as the names would clash. This is seen as preferable to allowing nodes to be aliased.

Parameters:

  arg | A node to store in a named node map. The node will later be accessible using the value of the `nodeName` attribute of the node. If a node with that name is already present in the map, it is replaced by the new one.

Returns:
  If the new `Node` replaces an existing node the replaced `Node` is returned, otherwise `null` is returned.

Exceptions:

  DOMException | WRONG_DOCUMENT_ERR: Raised if `arg` was created from a different document than the one that created the `NamedNodeMap`. NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly. INUSE_ATTRIBUTE_ERR: Raised if `arg` is an `Attr` that is already an attribute of another `Element` object. The DOM user must explicitly clone `Attr` nodes to re-use them in other elements.

Implements XalanNamedNodeMap.

virtual XalanNode* XalanEmptyNamedNodeMap::setNamedItemNS | ( | XalanNode * | arg | ) | `[virtual]`

Adds a node using its `namespaceURI` and `localName`.

Parameters:

  arg | A node to store in a named node map. The node will later be accessible using the value of the `namespaceURI` and `localName` attribute of the node. If a node with those namespace URI and local name is already present in the map, it is replaced by the new one.

Returns:
  If the new `Node` replaces an existing node the replaced `Node` is returned, otherwise `null` is returned.

Exceptions:

  DOMException | WRONG_DOCUMENT_ERR: Raised if `arg` was created from a different document than the one that created the `NamedNodeMap`. NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly. INUSE_ATTRIBUTE_ERR: Raised if `arg` is an `Attr` that is already an attribute of another `Element` object. The DOM user must explicitly clone `Attr` nodes to re-use them in other elements.

Implements XalanNamedNodeMap.

The documentation for this class was generated from the following file:

- XalanEmptyNamedNodeMap.hpp

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.9 Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.