18 #if !defined(XALAN_COUNTERSTABLE_HEADER_GUARD_1357924680) 19 #define XALAN_COUNTERSTABLE_HEADER_GUARD_1357924680 37 XALAN_CPP_NAMESPACE_BEGIN
88 MemoryManager& theManager,
90 NodeVectorType& countNodes) :
91 m_countNodesStartCount(0),
92 m_countNodes(countNodes, theManager),
94 m_numberElem(numberElem)
102 m_countNodesStartCount(0),
103 m_countNodes(theManager),
105 m_numberElem(numberElem)
110 m_countNodesStartCount(other.m_countNodesStartCount),
111 m_countNodes(other.m_countNodes, theManager),
112 m_fromNode(other.m_fromNode),
113 m_numberElem(other.m_numberElem)
134 return m_countNodes.
empty() ==
true ? 0 : m_countNodes.
back();
172 unsigned long theSize = 0) :
173 m_countersVector(theManager),
174 m_newFound(theManager)
193 m_countersVector.resize(theSize);
219 m_countersVector.clear();
241 XALAN_CPP_NAMESPACE_END
245 #endif // !defined(XALAN_COUNTERSTABLE_HEADER_GUARD_1357924680) ElemCounterVectorVectorTypeDecl ElemCounterVectorVectorType
NodeVectorType m_countNodes
A vector of all nodes counted so far.
CountType m_countNodesStartCount
The start count from where m_countNodes counts from.
<meta name="usage" content="internal"> This is a table of counters, keyed by ElemNumber objects...
const ElemNumber * m_numberElem
The owning xsl:number element.
<meta name="usage" content="internal"> A class that does incremental counting for support of xsl:numb...
void reset()
Clear all cached data from the table.
Counter(MemoryManager &theManager, const ElemNumber *numberElem=0)
Construct a counter object.
CounterVectorTypeDecl CounterVectorType
CountType getPreviouslyCounted(StylesheetExecutionContext &support, const XalanNode *node) const
Try to find a node that was previously counted.
Counter::NodeVectorType NodeVectorType
XalanVector< XalanNode * > NodeVectorType
CountersTable(MemoryManager &theManager, unsigned long theSize=0)
Construct a CountersTable.
#define XALAN_USES_MEMORY_MANAGER(Type)
void resize(unsigned long theSize)
Resize the table.
Counter(MemoryManager &theManager, const ElemNumber *numberElem, NodeVectorType &countNodes)
Construct a counter object.
XalanNode * getLast() const
Get the last node in the list.
Counter(const Counter &other, MemoryManager &theManager)
const XalanNode * m_fromNode
The node from where the counting starts.
Counter::CountType CountType