- void CreateNodeLast( const value_type& value ) \
- { \
- size_t bucket = m_hasher( m_getKey(value) ) % m_tableBuckets; \
- Node* curr = m_table[bucket], \
- * next = m_table[bucket]; \
- while( next ) { curr = next; next = next->m_next(); } \
- Node** ptr = curr ? (Node**)&curr->m_nxt : &m_table[bucket]; \
- *ptr = new Node( value ); \
- /* must be after the node is inserted */ \
- ++m_items; \
- if( SHOULD_GROW( m_tableBuckets, m_items ) ) \
- ResizeTable( m_tableBuckets ); \
- } \