18#if !defined(MUTABLENODEREFLIST_HEADER_GUARD_1357924680)
19#define MUTABLENODEREFLIST_HEADER_GUARD_1357924680
36class XPathExecutionContext;
242 return m_order == eUnknownOrder ?
true :
false;
248 m_order = eUnknownOrder;
257 return m_order == eDocumentOrder ?
true :
false;
268 m_order = eDocumentOrder;
277 return m_order == eReverseDocumentOrder ?
true :
false;
288 m_order = eReverseDocumentOrder;
308 m_list.addNodeInDocOrder(
theNode, m_executionContext);
323 const eOrder
temp = m_order;
335 enum eOrder { eUnknownOrder, eDocumentOrder, eReverseDocumentOrder };
#define XALAN_XPATH_EXPORT
#define XALAN_USES_MEMORY_MANAGER(Type)
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
void operator()(XalanNode *theNode) const
addNodeInDocOrderFunctor(MutableNodeRefList &theList, XPathExecutionContext &theExecutionContext)
Local implementation of MutableNodeRefList.
void addNodeInDocOrder(XalanNode *node, XPathExecutionContext &executionContext)
Add a node into list where it should occur in document order.
void clearNulls()
Clear any null entries in the node list.
MutableNodeRefList(const MutableNodeRefList &theSource, MemoryManager &theManager)
Construct a mutable node list from another list.
void reverse()
Reverse the nodes in the list.
virtual ~MutableNodeRefList()
void addNodes(const NodeRefListBase &nodelist)
Copy NodeList members into this nodelist, adding in document order.
MutableNodeRefList & operator=(const NodeRefListBase &theRHS)
void addNodes(const XalanNodeList &nodelist)
Copy NodeList members into this nodelist, adding in document order.
void reserve(size_type theCount)
Reserve space for the supplied number of nodes.
void setNode(size_type pos, XalanNode *n=0)
Set a item.
void setReverseDocumentOrder()
Set the known order of the nodes.
bool getDocumentOrder() const
See if the order of the nodes is document order.
MutableNodeRefList & operator=(const NodeRefList &theRHS)
MutableNodeRefList(MemoryManager &theManager)
Construct an empty mutable node list.
void removeNode(size_type pos)
Remove a node from the list.
MutableNodeRefList & operator=(const XalanNodeList *theRHS)
void removeNode(const XalanNode *n)
Remove a node from the list.
void swap(MutableNodeRefList &theOther)
MutableNodeRefList(const NodeRefListBase &theSource, MemoryManager &theManager)
Construct a mutable node list from another list.
void clear()
Remove all nodes.
void insertNode(XalanNode *n, size_type pos)
Insert a node at a given position.
static MutableNodeRefList * create(MemoryManager &theManager)
void addNodesInDocOrder(const MutableNodeRefList &nodelist, XPathExecutionContext &executionContext)
Copy NodeList members into this nodelist, adding in document order.
bool getReverseDocumentOrder() const
See if the order of the nodes is reverse document order.
void setDocumentOrder()
Set the known order of the nodes.
MutableNodeRefList & operator=(const MutableNodeRefList &theRHS)
void addNodesInDocOrder(const NodeRefListBase &nodelist, XPathExecutionContext &executionContext)
Copy NodeList members into this nodelist, adding in document order.
void addNode(XalanNode *n)
Add a node at to the list.
NodeListVectorType::iterator NodeListIteratorType
bool getUnknownOrder() const
See if the order of the nodes is an unknown order.
void addNodesInDocOrder(const XalanNodeList &nodelist, XPathExecutionContext &executionContext)
Copy NodeList members into this nodelist, adding in document order.
Local implementation of NodeRefList.
Local implementation of NodeRefList.